npm脚本nodemon – 监视js和scss文件的更改
我正在尝试设置一个开发环境,只使用NPM,而不使用grunt.js或bower.js。
我遵循这个教程: http : //beletsky.net/2015/04/npm-for-everything.html
我正在使用nodemon来监视我的.js和.scss文件,以查找重新启动节点服务器的更改。 所以在我的package.json文件中,我有脚本
脚本:
"watch-js": "nodemon -e js --watch public/js -x \"npm run build-js\"",
"watch-sass": "nodemon -e scss --watch public/sass -x \"npm run build-sass\"",
"watch": "npm run watch-js & npm run watch-sass"
但是当我运行npm run watch
,只能npm run watch
public / js文件。 并且相应地触发构build。
但它不会注意到的文件。
版本: node v0.10.36
nodemon v1.4.1
我还包括一个构build脚本,如果我运行编译sass到CSS,所以我的build-sass脚本应该没问题
"build": "npm run build-js & npm run build-sass", "watch": "npm run watch-js & npm run watch-sass"
如果您使用Windows,您可能会遇到Windows问题
由于npm依赖于操作系统shell来运行脚本命令,因此它们很快就会变得不可移植。 虽然Linux,Solaris,BSD和Mac OSX预装了Bash作为默认shell,但Windows却没有。 在Windows上,npm将使用Windows命令提示符来处理这些事情
如果是这样,你可以尝试使用parallelshell或npm-run-all来获得更好的跨平台支持。
这在Mac OS中适用于我
-
安装nodemon
npm install --save-dev nodemon
-
安装npm-run-all:
npm install --save-dev npm-run-all
-
在package.json中添加两个脚本:
"startn": "nodemon ./app.js", "watch-jscss": "gulp watch"
- 其中“app.js”是您的服务器文件
- “吞食手表”可以被任何正在做sass手表的任务取代
-
在控制台中:
npm-run-all --parallel watch-jscss startn
尝试改变,
"watch": "npm run watch-js & npm run watch-sass"
至
"watch": "npm run watch-js && npm run watch-sass"