从0到1塔建vite+vue3的ssr的服务端渲染的使用方法,不使用ts
时间: 2024-04-23 19:24:52 浏览: 264
好的,我会根据您的要求回答您的问题,以下是从0到1塔建vite+vue3的ssr的服务端渲染的使用方法,不使用ts:
1. 首先,安装Vite和Vue3
```
npm install -g vite
npm install vue@next
```
2. 创建项目并初始化
```
mkdir my-ssr-app
cd my-ssr-app
npm init -y
```
3. 安装依赖
```
npm install vue-server-renderer express
```
4. 创建服务端入口文件
在项目根目录下创建`server.js`文件,并添加以下内容:
```javascript
const express = require('express')
const { createRenderer } = require('vue-server-renderer')
const { createApp } = require('./src/main')
const app = express()
// 静态资源目录
app.use(express.static('dist'))
const renderer = createRenderer()
app.get('*', async (req, res) => {
const app = createApp()
const html = await renderer.renderToString(app)
res.end(`
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>SSR Vite Vue 3</title>
</head>
<body>
<div id="app">${html}</div>
<script src="/client.js"></script>
</body>
</html>
`)
})
app.listen(3000, () => {
console.log('Server started at http://localhost:3000')
})
```
5. 创建客户端入口文件
在项目根目录下创建`src/main.js`文件,并添加以下内容:
```javascript
import { createApp } from 'vue'
import App from './App.vue'
export function createApp () {
const app = createApp(App)
return { app }
}
```
6. 配置Vite
在项目根目录下创建`vite.config.js`文件,并添加以下内容:
```javascript
const { createVuePlugin } = require('vite-plugin-vue2')
module.exports = {
plugins: [
createVuePlugin()
],
build: {
ssrManifest: true,
outDir: 'dist',
rollupOptions: {
input: 'src/entry-client.js',
output: {
format: 'esm',
entryFileNames: '[name]-[hash].js'
}
}
},
optimizeDeps: {
include: [
'vue',
'vue-router'
]
}
}
```
7. 创建组件
在`src`文件夹下创建`App.vue`文件,并添加以下内容:
```vue
<template>
<div>
<h1>{{ message }}</h1>
</div>
</template>
<script>
export default {
data () {
return {
message: 'Hello World!'
}
}
}
</script>
```
8. 运行项目
使用以下命令启动项目:
```
vite build && node server.js
```
9. 查看效果
在浏览器中访问`http://localhost:3000`,即可看到页面渲染结果。
以上就是从0到1塔建vite+vue3的ssr的服务端渲染的使用方法,不使用ts的步骤。希望对您有所帮助!
阅读全文