将 Vue CLI 静态资源部署至gitee上的坑

官方文档
写的非常好!!!照着做基本没问题!!!(至少我第一次用的时候没问题)


后来,我把项目重新改了改,也不知道是动到了哪~,打包以后,用serve -s dist本地查看dist就报了这几条错误。我寻思着前前后后,我改动过的配置,就是引入ant design vue的时候,在vue.config.js里添加了less loader的规则,难道~?算了,说正经的
在这里插入图片描述
报错原因如下:
在vue.config.js里,对publicPath进行了如下配置,在本地环境中,这个 JS 的路径是不存在的!但是在 Gitee Pages 里,这个 JS 的路径其实是对的。
将 Vue CLI 静态资源部署至gitee上的坑_第1张图片
在 vue.config.js中,其实已经考虑了这个问题,它会在 production 环境(也就是 Gitee Pages 上)使用 /my-project/ 作为路径前缀,在本地使用 / 作为路径前缀。

但实际情况是,我们本地的 dist 使用了 /my-project/目录,而正确的前缀应该是 /

为什么 vue.config.js 考虑了这个问题,还是会出现这个问题呢?鬼知道~

但是,有解决办法啊!步骤如下:

  1. npm i cross-env(这个 cross-env 是 Windows 用户必须的,其他系统的用户装了它也没事,不会有任何副作用)
  2. 在 package.json 里添加一个 script,内容为 "build:dev":"cross-env NODE_ENV=development yarn build"
  3. 使用 npm run build:dev 得到的 dist 即可在本地用 serve 预览,使用 npm run build 得到的 dist 即可在 Gitee Pages 上正常预览。

你可能感兴趣的:(前端学习,vue)