【发布时间】:2018-02-26 16:14:11
【问题描述】:
我正在编写一个应该可以缓存的 Webpack 加载器。 documentation for this.cacheable 说:
当输入和依赖没有改变时,一个可缓存的加载器必须有一个确定的结果。
现在我想知道:从这个意义上说,加载程序的选项是否算作“输入”?
假设我有一个 Webpack 构建,它在模块上使用带有选项 { foo: 1 } 的加载器。在下一次编译中,它在同一个模块上使用相同的加载器,但带有选项{ foo: 2 }。第一次编译的输出会被重用,还是 Webpack(正确地)意识到加载器的选项已经改变,从而重新加载模块?
假设 Webpack 比较 options 对象,它们是如何比较的?引用?使用深度比较?比较逻辑将决定我可以安全地将哪些类型的数据用作加载器选项。
【问题讨论】:
标签: javascript webpack