我正在设置一个package.json文件,该文件将启动Nodemon,运行watch css命令并使用“ npm start”命令运行浏览器同步。
这可以在我的Mac计算机上工作,但不能在我的Windows计算机上工作。
在我的Mac上,它将侦听服务器和SCSS文件的所有更改,并运行浏览器同步。
在Windows上,它仅运行Nodemon,并等待任何服务器更改。看起来它忽略了我的其他两个命令。
我需要为Windows做些不同的事情吗?理想情况下,我希望代码可以在两个平台上通用。
Nodemon似乎是这里的问题,因为watch-css css和browsersync可以工作,但是nodemon之后的任何工作都不起作用。
"scripts": {
"build-css": "node-sass --output-style compressed --source-map true -o public/css scss",
"watch-css": "nodemon -e scss -x \"npm run build-css\"",
"build-js": "browserify js/app.js -o public/js/app.js",
"browser-sync": "browser-sync start --port 4000 --proxy 'localhost:3000' --files 'views/*' 'public/**/*' --no-notify",
"start": "nodemon ./bin/www & npm run watch-css & npm run browser-sync"
},
答案 0 :(得分:1)
这是我使用的:npm-run-all(这是跨平台的)。它们使您可以并行且顺序地(-p
或-s
)运行进程/命令。
"scripts": {
"build-css": "node-sass-chokidar src/ -o src/ --importer=node_modules/node-sass-tilde-importer",
"watch-css": "npm run build-css && node-sass-chokidar src/ -o src/ --watch --recursive",
"start-js": "react-scripts start",
"start": "npm-run-all -p watch-css start-js",
// ... and much more
}
对于Windows和Mac,这对我来说都很好。尝试一下,希望对您有所帮助。