我试图缓存我的 node_modules,它可以工作。问题是当我尝试 npm 链接 node_modules 中的某个文件夹时,它只是忽略了更改,因为它已经缓存了。
所以我想排除单个文件夹,可能使用正则表达式,但经过数小时的谷歌搜索和阅读文档后,我只是不知道如何。
问题:当我更改链接文件夹时,应用程序不显示更改,因为它已缓存。如果 cache
设置为 false
,重新加载需要很长时间。
期待
能够从 webpack 中的缓存中排除单个文件夹,并且仍然缓存 node_modules 的其余部分。 (我曾尝试在 immutablePaths
或 managedPaths
中使用正则表达式)
这是我的 module.exports 对象:
{
...commonConfig.reactBundleConfig,
...{
mode: 'development',
watch: true,
watchOptions: {
ignored: ['ignored paths'],
followSymlinks: true
},
cache: {
type: 'filesystem'
},
devtool: 'source-map'
}
}
回答1
您可以使用下一个设置从缓存中排除模块:
snapshot: {
// https://github.com/webpack/webpack/issues/11952
managedPaths: [/^(.+?[\\/]node_modules)[\\/]((?!your-module-name)).*[\\/]*/],
}