diff --git a/app.js b/app.js new file mode 100644 index 0000000..3fb62c4 --- /dev/null +++ b/app.js @@ -0,0 +1,6 @@ +import { createSSRApp } from 'vue' + +export const app = createSSRApp({ + data: () => ({ hello: 'Vue SSR Example' }), + template: `
{{ hello }}
`, +}) diff --git a/client.js b/client.js new file mode 100644 index 0000000..73c9676 --- /dev/null +++ b/client.js @@ -0,0 +1,3 @@ +import { app } from './app.js' + +app.mount('#app') diff --git a/server.js b/server.js index a5cefe0..ec0280f 100644 --- a/server.js +++ b/server.js @@ -1 +1,36 @@ -// TODO 监听3000端口,便于执行test +import express from 'express' +import { app } from './app.js' +import { renderToString } from 'vue/server-renderer' + +const server = express() +server.use(express.static('.')) + +server.get('/', (req, res) => { + renderToString(app).then((html) => { + res.send(` + + + + Vue SSR Example + + + + + +
${html}
+ + + `) + }) +}) + +const port = 3000 +server.listen(port, () => { + console.log(`started at http://127.0.0.1:${port}`) +})