TypeError: Cannot read properties of undefined (reading ‘NormalModule‘) 错误的解决方案

发生原因

这个错误原因各种各样。虽然是相同的错误,但可能造成的原因完全不同。所以还是需要理性分析。

我遇到的原因是我打算在vue3项目(差不多新建的项目)里面添加less功能。于是我执行下面的代码安装less

npm install less less-loader --save

安装完成后,我打算用一下,结果我忘记webpack怎么配置less了。
在没有配置的情况下。我直接npm run serve运行项目,就出现了这个错误。

我心想,那算了,先不用less了,于是我执行下面的命令把less卸载了。

npm uninstall less less-loader 

卸载后,运行npm run serve打算跑一下项目,发现还是报这个错误。

原因分析和解决思路

于是我直接百度搜这个错误。发现这个错误很多原因都会造成。
于是我做了关键一步:
仔细阅读错误。
仔细阅读错误。
仔细阅读错误。

这个错误发生的直接原因就是这个vue-loader-v16。这非常关键,这可以帮我们减少错误范围。你的错误可能不是这个原因,但一定是某个东西出问题了。

at VueLoaderPlugin.apply (路径\node_modules\vue-loader-v16\dist\pluginWebpack5

这时候用搜索引擎查下面这个具体错误,比直接搜标题这个错误好多了。注意把无关的路径信息去除。

node_modules\vue-loader-v16\dist\pluginWebpack5

我打开的第一篇文章就帮我解决了问题。
这个人遇到的错误和我是一样的,都是报vue-loader-v16的错误。他遇到的原因是换了太电脑就这样了。

他给出的解决方案是重新安装webpack。

npm install [email protected] --save

最开始我很怀疑这个解决办法,但还是打算试一试。结果真的是有效的。如果无效可以试着换别的webpack版本。
最好是查一下原来的webpack版本,重新安装一次。

[email protected]

总结

从现象猜测,可能就是你安装插件的版本和本地的webpack不兼容导致的。

猜你喜欢

转载自blog.csdn.net/ScottePerk/article/details/127922022