记录一下踩坑
前几天, 从同事手上接手了一个 vue 的项目.(Ps: 刚入职两周, 老哥还专门写了一个 readMe, 感谢);
问题来了, 从 GitLab 上面把项目上 clone 下来了, node 环境什么的都配置好了,
- NPM install
- NPM run dev
无法运行, 报错信息如下:
> NODE_ENV=development webpack-dev-server --open --inline --hot
'NODE_ENV' 不是内部或外部命令, 也不是可运行的程序
或批处理文件.
- NPM ERR! code ELIFECYCLE
- NPM ERR! errno 1
- NPM ERR! ubilltools@1.0.0 dev: `NODE_ENV=development webpack-dev-server --open --inline --hot`
- NPM ERR! Exit status 1
- NPM ERR!
- NPM ERR! Failed at the ubilltools@1.0.0 dev script.
- NPM ERR! This is probably not a problem with NPM. There is likely additional logging output above.
- NPM ERR! A complete log of this run can be found in:
一开始以为是包的问题, 安装的时候出现过包的错误和警告. 运用谷歌大法 , 也看了好几篇博客, 说的不是很详细 , 虽然是个小问题.(Ps: 我确实比较菜) 后面让部门同样的 node 环境运行没有问题, 通过查找博客说的是 Mac 平台和 Windows 问题的.
- "scripts": {
- "dev": "NODE_ENV=development webpack-dev-server --open --inline --hot",
- "build": "NODE_ENV=production webpack --progress --hide-modules"
- },
这是项目 package.JSON 中自带的配置环境书写, 出现报错的原因是因为 Windows 平台不支持这样的写法. 要实现跨平台通过 node 的一个模块 cross-env 来实现.
NPM install cross-env
在 package.JSON 添加 cross-env 就可以了:
- "scripts": {
- "dev": "cross-env NODE_ENV=development webpack-dev-server --open --inline --hot",
- "build": "cross-env NODE_ENV=production webpack --progress --hide-modules"
- },
再 NPM run dev, 成功运行.
来源: http://www.jb51.net/article/147639.htm