我正在测试使用npm脚本最终消除了对Gulp的依赖。我开始只使用一个名为watch
的主要自定义脚本。该脚本最终将运行所有以watch
名称开头的脚本;例如watch:styles
。我的watch:styles
脚本将使用node-sass将我的sass文件编译成CSS。这有效。但是,我的下一步是创建一个postwatch:styles
脚本,通过PostCSS和Autoprefixer运行新创建的.css
文件。
问题,但我的postwatch:styles
挂钩永远不会被触发运行。
的package.json
{
"name": "npm-scripts-test",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"watch": "npm-run-all --parallel watch:*",
"watch:styles": "node-sass -w ./src/styles/main.scss ./dist/assets/styles/app.css",
"postwatch:styles": "postcss -u autoprefixer --no-map ./dist/assets/styles/app.css -o ./dist/assets/styles/app.css"
},
"author": "",
"license": "ISC",
"devDependencies": {},
"dependencies": {
"autoprefixer": "^7.1.1",
"node-sass": "^4.5.3",
"postcss-cli": "^4.0.0",
"yarn-run-all": "^3.1.1"
},
"browserslist": [
"last 3 versions"
]
}
关于为什么我的帖子不会被解雇的任何建议或建议?最初的watch:styles
运行得很好。如果我手动运行yarn postwatch:styles
,脚本将正确运行。我的watch:styles
是否会出现无法解决的问题,导致无法解除挂钩?
非常感谢任何建议。
答案 0 :(得分:1)
由于watch:styles
在监视模式下调用node-sass
,命令永远不会返回,但会保持活动状态,等待文件更改。
由于没有正面回报,postwatch:styles
永远不会被召回。
您应该尝试另一种方法watching your files with watch
或nodemon
。