我正在努力迁移我编写的使用Gulp + Webpack的现有工作流程。
继续使用Gulp似乎是多余的。随着时间的推移它所做的就是运行Webpack。
我决定只使用npm的脚本来管理工作流程,但是一个问题突然出现在我脑海里,我自己无法回答。
为什么要在节点方式编写的单个脚本文件中使用npm脚本?
为什么要用这个:
"scripts": {
"test": "test **.js",
"lint": "lint",
"prebuild": "npm run clean", // <-- hurts my eyes
"build": "webpack --bla bla --some more bla",
"minify": "npm run build"
}
这一点(即使是干净也是多余的):
"scripts": {
"clean": "./scripts/clean.js", // <-- I get full control on clean operation.
"build": "./scripts/webpack.js", // <-- pre & post operation are invoked when I want them to
}
前一种方法很快就会变得混乱,传递参数/做程序化操作是一件痛苦的事。例如,使用自定义记录器或调试来控制失败的策略似乎是一个不可能的壮举。