vue server side render solution for egg-view-vue
$ npm i egg-view-vue-ssr --save
// {app_root}/config/plugin.js
exports.vuessr = {
enable: true,
package: 'egg-view-vue-ssr',
};
// {app_root}/config/config.default.js
exports.vuessr = {
// layout: path.join(app.baseDir, 'app/view/layout.html'),
// manifest: path.join(app.baseDir, 'config/manifest.json'),
// buildConfig: path.join(app.baseDir, 'config/buildConfig.json'),
// injectCss: true,
// injectJs: true,
// injectRes: []
// fallbackToClient: true, // fallback to client rendering after server rendering failed
// afterRender: (html, context) => {
// return html;
// },
};
// controller/home.js
exports.index = function* (ctx) {
yield ctx.render('index/index.js', Model.getPage(1, 10));
};
when client render , the template is exports.vuessr.layout
// controller/home.js
exports.client = function* (ctx) {
yield ctx.renderClient('index/index.js', Model.getPage(1, 10));
};
see config/config.default.js for more detail.
Please open an issue here.