vue-router改为history模式
打包好后本地测试运行是否正常
环境搭建:
这个时候需要利用node中的express,方法如下: 安装express: npm install -g express; 最新express4.0版本中将命令工具分家出来了,还需要安装一个命令工具: npm install -g express-generator; 创建一个express工程: express helloworld; 进入项目主目录: cd helloworld; 安装必备包: npm install; 启动程序: npm start; 把打包后的dist文件夹放在public文件夹里,访问http://localhost:3000/dist就能看到项目了,这样测试好了后,就可以丢后台了
存在问题: 提示css文件和mainfest.js文件404,且提示webpack.jsonp is undefined(这个错误是由于mainfest.js文件404导致,因为app.js和其他的js文件用到了webpack.jsonp,但是他是在mainfest中定义的)
解决404问题: 在config文件夹中的index.js中设置一个路径问题,不然也会报错,在js中找到build:{assetsPublicPath: './'},默认路径是'/',需要加上'.'
相关参考链接: https://www.jb51.net/article/...
https://blog.csdn.net/GossipHHH/article/details/78749308
route使用history模式,去掉链接里的#号
踩过的坑:
1.
这样配置 这里assetsPublicPsth写成‘./’(是在当前目录下去找静态文件),导致刷新页面或者直接访问页面localhost:3000/versionflow/mychange的时候提示资源文件404
**原因: ./ 代表的是去当前目录下找静态文件,所以程序会在public/versionflow下去找静态文件,但是并没有versionflow这个文件夹,所以会提示404(根目录为public)** 2.
这样配置,直接访问就提示找不到静态资源404,
算了不写了,千坑万坑都是自己亲手挖的
正确写法
assetsSubDirectory设置的文件需要能够在根目录(需要在哪个目录下找是根据assetsPublicPath的设置决定的)下找到
地基没有打牢,重新打一下地基
=========================================转载
首先要说的是 ./ ../ /
/ 取根目录:
file:///
./ 取当前目录:
file:///Users/xxx/Documents/projects/outsourcing/youreact/dist/
../ 取当前目录的上一层目录:
file:///Users/xxx/Documents/projects/outsourcing/youreact/
assetsRoot:构建输出目录 也就是构建后的东西都扔这里
assetsSubDirectory:资源子目录 除了index.html,其余的js img css都分在这里
assetsPublicPath:项目目录 一个杠杠 啥意思呢,是根目录的意思
作者:懒先森
链接:https://www.jianshu.com/p/947...
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。