解决SEO(Search Engine Optimization),首屏问题 , 页面较少,且预渲染相对于SSR比较简单,预渲染可以极大的提高网页访问速度。而且配合一些meat插件,完全可以满足SEO需求。
Prerender服务需要有NodeJs环境支持,如果之前服务器环境没有NodeJs需要先进行安装。
prerender-spa-plugin中有puppeteer
可能会报错
此时可以试试淘宝镜像安装
因为在执行安装的过程中需要执行install.js,这里会下载Chromium,官网建议是进行跳过,我们可以执行 —ignore-scripts 忽略这个js执行。也可以通过设置环境变量set PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=1阻止下载 Chromium (因为封网,直接下载会失败)
webpack.base.conf.js
webpack.prod.conf.js
开始我这样写
在main.js中增加
router.js 中设置mode: “history”
运行npm run build,看一下生成的 dist 的目录里是不是有每个路由名称对应的文件夹。然后找个 目录里 的 index.html 用IDE打开,看文件内容里是否有该文件应该有的内容。有的话,就设置成功了,如果没成功,照着上面的步骤再来一次!!!
结合管理头部标签插件vue-meta-info
main.js中加
页面的vue中加metaInfo信息
就可以将关键字预渲染到html的页面中去
一、Uncaught ReferenceError: webpackJsonp is not defined
发现是config/index.js
这里要强调一点如果你的assetsPublicPath设置成'www.xxx.com',生成的html是没有内容的而且插件vue-meta-info的设置的信息也不会加载出来
二、解决vuex requires a Promise polyfill in this browser问题
添加babel-polyfill插件
webpack.base.conf.js