https://ssr.vuejs.org/guide/#using-a-page-template 但是教程中肯定缺少一些东西。
const Vue = require('vue'); const server = require('express')(); const vssr = require('vue-server-renderer'); server.get('*', (req, res) => { const renderer = vssr.createRenderer({ template: require('fs').readFileSync('./templates/index.html', 'utf-8') }); const context = { title: 'hello', meta: ` <meta ...> <meta ...> ` }; const app = new Vue({}); renderer.renderToString(app, context, (err, html) => { if (err) { console.log(err); process.exit(); } console.log(html); }); }); server.listen(6081);
至少
试着提供一个 template 财产 render
template
render
new Vue({ template: `<div>Hello there!</div>` })
下面的几行仅表示您希望为渲染器使用自己的页面模板,稍后将在其中注入应用程序的标记。
const renderer = vssr.createRenderer({ template: require('fs').readFileSync('./templates/index.html', 'utf-8') });