webpack-5 - Webpack - 从缓存中排除 node_modules 的单个文件夹

我试图缓存我的 node_modules,它可以工作。问题是当我尝试 npm 链接 node_modules 中的某个文件夹时,它只是忽略了更改,因为它已经缓存了。

所以我想排除单个文件夹,可能使用正则表达式,但经过数小时的谷歌搜索和阅读文档后,我只是不知道如何。

问题:当我更改链接文件夹时,应用程序不显示更改,因为它已缓存。如果 cache 设置为 false,重新加载需要很长时间。

期待

能够从 webpack 中的缓存中排除单个文件夹,并且仍然缓存 node_modules 的其余部分。 (我曾尝试在 immutablePathsmanagedPaths 中使用正则表达式)

这是我的 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)).*[\\/]*/],
}

相似文章

twilio - DevTools 无法加载源 map

我知道Chrome开发工具中有很多关于这些警告的帖子。对于所有这些,解决方案是关闭通知“启用javascript源maps”和“启用CSS源maps”。我想知道的是如何解决这个问题,以及导致这些警告的...