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

Nob*_*t59 4 webpack

在 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: undefined,
  _locN: undefined,
  _loc: SourceLocation {
    start: Position { line: 1, column: 12241 },
    end: Position { line: 1, column: 12242 }
  },
  request: '@emotion/stylis',
  userRequest: '@emotion/stylis',
  range: [ 12241, 12242 ],
  assertions: undefined,
  sourceOrder: 4,
  ids: [ 'default' ],
  name: 'p',
  exportPresenceMode: 2,
  namespaceObjectAsContext: false,
  call: undefined,
  directImport: true,
  shorthand: false,
  asiSafe: true,
  usedByExports: undefined
}
Run Code Online (Sandbox Code Playgroud)

我不太确定这意味着什么。也许request或者userRequest是一个提示( @emotion/stylis)。我不确定问题是否更多地出现在进口方面而不是进口方面,以及这指的是哪一方面。

不知道为什么会突然开始发生这种情况,假设软件包版本发生了一些变化。项目该区域的代码和配置最近没有变化。

Gal*_*ilo 15

对我来说,我已经更改了 package.json 文件的一些属性

"webpack": "5.71.0",
"webpack-cli": "4.9.2",
"webpack-dev-server": "4.8.0"
Run Code Online (Sandbox Code Playgroud)

"webpack": "5.65.0",
"webpack-cli": "4.9.1",
"webpack-dev-server": "4.7.1",
Run Code Online (Sandbox Code Playgroud)