NPM Scripts Post Hook没有被解雇

时间:2017-06-01 20:15:57

标签: javascript node.js npm postcss npm-scripts

我正在测试使用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是否会出现无法解决的问题,导致无法解除挂钩?

非常感谢任何建议。

1 个答案:

答案 0 :(得分:1)

由于watch:styles在监视模式下调用node-sass,命令永远不会返回,但会保持活动状态,等待文件更改。

由于没有正面回报,postwatch:styles永远不会被召回。

您应该尝试另一种方法watching your files with watchnodemon