以前用vue-cli脚手架在windows上开发的一个项目,如今有换mac的打算,可是换系统的话对代码对环境依赖比较严重。html
去年和别的FE并行开发两我的用的都是windows,这样还好,没有什么问题,可是两我的电脑环境不同问题就比较多了。前端
因此准备将环境切换到Linux,可是碰见了重重困难,这里记录一下。vue
将代码git到Linux上,果真npm run dev是行不通的。node
1. 碰见的第一个error 8080 端口不可用linux
尝试 ,依然报错,查了下日志
和查看node进程确认是否开启了两个
webpack
netstat 查看端口占用状况nginx
发现被nginx占用,不是和替换端口或者复用端口,因此修改端口git
找到index.js 替换端口配置github
npm run dev发现仍是报错 原文web
找不到缘由 因而google了一下 缘由是webpack的opn模块 的问题
注释opn模块(这个模块用于启动浏览器,因为在Linux环境里并无浏览器,因此报错,vue-cli生成的项目适用于敏捷开发,仍是有很多限制性的)
再次npm run dev 端口被启用了 也能访问 但仍是报错,并且是各个组件报错
继续往下追查
缘由是环境改变了 原来的环境是window 64-bit 如今是linux 因此npm 须要从新计算节点
npm rebuild node-sass --force
终于解决了!!!
--------------------分割线 于2018-10-23
在更换了mac以后,果真又出现了这个问题,可是奇怪的是rebuild不起做用。仍是报相同的错误。
在查阅了不少文档后,在github的issue中找到了解决方案,就是从新装,由于在就项目中,安装的node-sass 会存在软链,而在新的机器上git代码,虽然rebuild了,可是软链没有更新
因此须要先卸载,再重装
npm uninstall --save node-sass
npm install --save node-sass
--------------------
总结: 这算是碰见环境依赖问题较为麻烦的一个,碰见了错误须要理清楚思路,查debug-log, 一步步解决,掌握一些linux知识对前端也是很重要的
另外转载劳烦注明出处,否则就没有分享的动力了。 原文连接