我尝试在package.json文件中创建一个脚本,该脚本将启动我的nodemon应用程序,然后触发gulp sass监视
目前,我可以通过运行一个npm launch
来启动nodemon,然后在一个单独的终端窗口中运行gulp watch
来从我的gulp文件中触发sass手表。
我想在package.json中创建一个脚本命令来完成这两个任务--可以吗?
package.json
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"start": "nodemon app.js",
"launch": "nodemon app.js && gulp watch"
},
gulpfile.js
const { src, dest, watch } = require("gulp");
const sass = require('gulp-sass')(require('node-sass'));
function generateCSS(cb) {
src('./sass/**/*.scss')
.pipe(sass().on('error', sass.logError))
.pipe(dest('public/css'));
cb();
}
function watchFiles(cb) {
watch('sass/**/**.scss', generateCSS);
}
exports.css = generateCSS;
exports.watch = watchFiles;
编辑:请看下面我的回答,看看我是怎么工作的,灵感来自@cmgchess的回答
3条答案
按热度按时间yzxexxkh1#
您应该能够使用npm-run-all包及其
run-p
命令来并行执行多个脚本:那你就干脆做:
xhv8bpkk2#
只需使用
&&
package.json
7gcisfzg3#
根据注解中的@cmgchess回答,使用两个“与”符号可以顺序运行命令。然而,也可以选择使用单个“与”符号,这样可以并行运行它们。在本例中,这就是我所需要的:
编辑:好的,我第一次运行启动时它运行得很好。但是,随后的启动崩溃了。我现在在多次启动中再次运行它,我还必须做的是切换命令的顺序: