我的web项目主要是Python,但是我使用Webpack来编译和压缩我的Javascript,它运行得非常好。
汇编需要一点点,但这既是预期的,也是可以接受的。但是,当我在本地运行测试时,我发现确保拥有最新Javascript的唯一方法就是编译它。
我想要测试的越多,这就成了一个大问题。大部分时间我打包的代码都没有改变,因为那不是我正在做的工作。因此,在测试运行之间,webpack的输出不会发生变化。我仍然需要承担包装费用,因为我无法保证它没有改变。
webpack是否有办法查看自上一个包创建以来源文件是否已更改,并且只有在已存在的包不是来自相同源文件的情况下才打包?
答案 0 :(得分:2)
没有简单的内置方法可以做到这一点,但有人写了一个插件:only-if-changed-webpack-plugin。这将检查您的输入文件及其所有依赖项上的时间,并且仅在发生更改时重建。
答案 1 :(得分:0)
npm install -g build-if-changed
在项目根目录中创建文件buildconfig
:
[cross-env NODE_ENV='production' && webpack -p --progress] <-- your build command in brackets here
out: ./build/*.js <-- path where your webpack will put a new file
src/**/* <-- all sources that will be monitored
运行build-if-changed
或添加到package.json
。完美的工作!
Detailed blog post