Vue 骨架屏搭建遇到的坑

最近在搞vue骨架屏的搭建,网上查了很多资料。基本都可以正常搭建起来,就是过程中遇到很多错误,特地记录下

搭建过程参考链接 https://segmentfault.com/a/1190000014832185 

来说说主要遇到的问题

1.因为原先没做过ssr,所以要先安装 vue-server-renderer ,并且vue的版本要和vue-server-renderer的版本一直,所以安装的时候直接npm install vue vue-server-renderer --save (版本不一致的话,到时候会报vue和vue-server-rendere版本不一致)

2.在生成skeleton.json文件的时候,需要运行webpack --config ./webpack.skeleton.conf.js ,这个时候会报没有webpack命令,需要运行node_modules/.bin/webpack --config ./webpack.skeleton.conf.js 

3.在运行node skeleton.js的时候,有报未安装 webpack-node-externals ,需要安装 npm install webpack-node-externals --save-dev

4.运行node skeleton.js的时候有时候会报错,需要安装npm install vue-template-compiler

5.最后运行node skeleton.js的时候会将模板注入到index.html,我们要先npm run build ,然后将内容注入到编译后的index.html,也就是skeleton.js中的注入路径需要改成
 

// 读取`skeleton.json`,以`index.html`为模板写入内容

const renderer = createBundleRenderer(resolve(__dirname, './dist/skeleton.json'), {

template: fs.readFileSync(resolve(__dirname, './dist/index.html'), 'utf-8')

})

// 把上一步模板完成的内容写入(替换)`index.html`

renderer.renderToString({}, (err, html) => {

fs.writeFileSync('./dist/index.html', html, 'utf-8')

})

 

如果注入的是未编译的,编译后会无法运行vue,会报错,导致页面一直在骨架屏


 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值