小编Nob*_*t59的帖子

node_modules 中的更改是否会使 webpack 构建缓存失效?

Webpack 配置cache.buildDependencies可用于列出文件或目录,这样,如果它们发生更改,则基于文件系统的 Webpack 构建缓存将失效。

持久缓存指南对此进行了深入记录。

该文档说默认情况下包含 webpack lib。文档还展示了如何包含webpack.config.js文件本身。

这是一个愚蠢的问题吗node_modules?他们也没有提到类似的事情yarn.lock。在某些类型的工作区中,库依赖项可能会显示为node_modules符号链接 - 在这些情况下,依赖项可以在开发过程中并行更新。这些更改应该会使这些 webpack 构建缓存无效,对吗?

webpack

5
推荐指数
1
解决办法
2133
查看次数

类型错误:无法读取未定义的属性“buildMeta”

在 webpack@5.72.0 (目前最新的)上,我开始看到:

TypeError: Cannot read property 'buildMeta' of undefined
    at HarmonyImportSpecifierDependency._getEffectiveExportPresenceLevel (/src/project/node_modules/.pnpm/webpack@5.72.0_webpack-cli@4.9.2/node_modules/webpack/lib/dependencies/HarmonyImportSpecifierDependency.js:165:43)
    at HarmonyImportSpecifierDependency.getWarnings (/src/project/node_modules/.pnpm/webpack@5.72.0_webpack-cli@4.9.2/node_modules/webpack/lib/dependencies/HarmonyImportSpecifierDependency.js:176:32)
    at Compilation.reportDependencyErrorsAndWarnings (/src/project/node_modules/.pnpm/webpack@5.72.0_webpack-cli@4.9.2/node_modules/webpack/lib/Compilation.js:3132:24)
    at /src/project/node_modules/.pnpm/webpack@5.72.0_webpack-cli@4.9.2/node_modules/webpack/lib/Compilation.js:2729:28
Run Code Online (Sandbox Code Playgroud)

顶部框架是(源代码在这里):

  /**
   * @param {ModuleGraph} moduleGraph module graph
   * @returns {number} effective mode
   */
  _getEffectiveExportPresenceLevel(moduleGraph) {
    if (this.exportPresenceMode !== ExportPresenceModes.AUTO)
      return this.exportPresenceMode;
    return moduleGraph.getParentModule(this).buildMeta.strictHarmonyModule
      ? ExportPresenceModes.ERROR
      : ExportPresenceModes.WARN;
  }
Run Code Online (Sandbox Code Playgroud)

为什么会moduleGraph.getParentModule(this)是未定义的?一般情况下应该怎样预防呢?

this我从里面倒出来_getEffectiveExportPresenceLevel,得到:

HarmonyImportSpecifierDependency {
  _parentModule: undefined,
  _parentDependenciesBlock: undefined,
  _parentDependenciesBlockIndex: -1,
  weak: false,
  optional: false,
  _locSL: 1,
  _locSC: 12241,
  _locEL: 1,
  _locEC: 12242,
  _locI: …
Run Code Online (Sandbox Code Playgroud)

webpack

4
推荐指数
1
解决办法
6230
查看次数

标签 统计

webpack ×2