TypeError:无法解构“未定义”或“空”的属性“记录器”

Posted

技术标签:

【中文标题】TypeError:无法解构“未定义”或“空”的属性“记录器”【英文标题】:TypeError: Cannot destructure property `logger` of 'undefined' or 'null' 【发布时间】:2021-03-01 23:18:39 【问题描述】:

我正在尝试将 webpack 与 webpack-dev-server 一起运行,但出现此错误:

TypeError: Cannot destructure property `logger` of 'undefined' or 'null'.
at Object.<anonymous> (/Users/monz777/test/node_modules/@webpack-cli/serve/lib/createConfig.js:4:34)
at Module._compile (/Users/monz777/test/node_modules/v8-compile-cache/v8-compile-cache.js:192:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:827:10)
at Module.load (internal/modules/cjs/loader.js:685:32)
at Function.Module._load (internal/modules/cjs/loader.js:620:12)
at Module.require (internal/modules/cjs/loader.js:723:19)
at require (/Users/monz777/test/node_modules/v8-compile-cache/v8-compile-cache.js:161:20)
at Object.<anonymous> (Users/monz777/test/node_modules/@webpack-cli/serve/lib/startDevServer.js:6:40)
at Module._compile (/Users/monz777/test/node_modules/v8-compile-cache/v8-compile-cache.js:192:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:827:10)

版本:

"webpack": "^4.42.0",
"webpack-cli": "^3.3.11",
"webpack-dev-server": "^3.10.3",

NPM 脚本:

"start": "webpack serve --open --config webpack.config.js",

在最新版本上尝试相同,但没有帮助。

【问题讨论】:

【参考方案1】:

我之前遇到过同样的问题,然后我尝试了这些版本。它有效!

"webpack": "^4.41.5",
"webpack-cli": "^4.2.0",
"webpack-dev-server": "^3.11.0"

NPM 脚本

"build": "webpack --config webpack.config.js",
"start": "webpack serve --open 'Google Chrome'" //webpack serve --open 'browser-name'

【讨论】:

谢谢,这对我有用。也许应该向 webpack github repo 报告。【参考方案2】:

谢谢!我也尝试完全删除 node_modules 并再次调用 npm i 。它没有帮助,但是当我开始一个一个地安装模块时,它成功了。跨模块似乎存在一些冲突问题。

【讨论】:

【参考方案3】:

我有同样的问题:

"webpack": "^4.42.0",
"webpack-cli": "^3.3.11",
"webpack-dev-server": "^3.10.3",

我尝试重新安装「webpack-cli」

yarn add webpack-cli@4.2.0

重试 package.json 脚本:

"start": "webpack serve --config webpack.dev.js"

成功了!

【讨论】:

【参考方案4】:

以下步骤对我有用:

    删除node_modules 文件夹和package.json 文件。 使用npm init -y 命令重新创建package.json 文件。 使用以下命令重新安装软件包(在这种情况下,我将安装一些额外的软件包,因为我假设您最终还需要使用 .css.html.js 文件):@987654328 @。

然后你应该能够再次运行 webpack。

【讨论】:

以上是关于TypeError:无法解构“未定义”或“空”的属性“记录器”的主要内容,如果未能解决你的问题,请参考以下文章

Nestjs Swagger UnhandledPromiseRejectionWarning:TypeError:无法解构“未定义”或“空”的属性“原型”

无法解构“未定义”或“空”的属性“allowedHost”

TypeError:无法解构“对象(...)(...)”的属性“setValues”,因为它未定义。 (反应/创建反应应用)

从 Vue CLI(Vue 3)迁移到 Vite:未捕获(承诺中)类型错误:无法解构“未定义”的属性“默认”,因为它未定义

解构可为空的对象

JQuery DataTables 插件:TypeError:e[j] 未定义