javascript - Vue cli 默认使用 webpack 4 而不是 5
问题描述
我正在尝试使用 Vue 2 启动并运行一个应用程序,在我尝试使用node-sass
andsass-loader
包之前一切都很好。我开始遇到错误,经过调查,看来我需要使用webpack
5+ 才能使最新的node-sass
软件包正常工作。在四处寻找之后,它看起来像我创建项目时默认为webpack
版本 4.46.0。
我按照官方页面上的说明将我的更新vue-cli
到最新版本,然后尝试重新初始化一个新项目,但仍然遇到同样的问题。目前,我有@vue/cli 4.5.12
哪个看起来是最新的(我认为)。
vue create <app-name>
我正在使用默认配置初始化应用程序。我确实找到了这个页面,上面写着“从 v4 迁移”,这可能意味着可能有更高版本,vue-cli
但我再次按照所有说明操作无济于事,所以不确定我是否只是在这里遗漏了一些东西。
我是 Vue 的新手,不知道我应该提供哪些额外的信息才能使它有用,但我已经搜索了所有内容,我一生都无法弄清楚发生了什么。
解决方案
根据我在 GitHub 上的发现,Vue CLI 的最新稳定版本 4.5.12 仍然使用 Webpack 4:https ://github.com/vuejs/vue-cli/blob/v4.5.12/package.json 。考虑到这一点,我认为最简单的解决方案是将 sass-loader 降级到版本 10,npm install sass-loader@10
例如,如下所示:https ://stackoverflow.com/a/66087132/1505369 。
您可以尝试使用 vue-cli 的 beta 版本,正如我所尝试的那样,通过将两者@vue/cli-service
以及我相信所有 vue-cli 插件更新到版本 5.0.0-beta.0,使用npm install @vue/cli-service@5.0.0-beta.0 @vue/cli-plugin-babel@5.0.0-beta.0 @vue/cli-plugin-eslint@5.0.0-beta.0 @vue/cli-plugin-vuex@5.0.0-beta.0
. 它应该最终安装和使用 Webpack 5。但就我个人而言,它并没有真正解决问题,因为发生了新错误:
错误类型错误:“编译”参数必须是编译类型错误的实例:“编译”参数必须是编译的实例
// ...
推荐阅读
- c++ - 发现一个或多个意外的 \r (^M);最好只使用 \n [空格/换行符] [1]?
- javascript - HTML“禁用”HTML输入的空格键
- ios - 在“IOS”中使用“rn-fetch-blob”上传图像的问题
- javascript - 函数内部的函数不起作用。我是否缺少退货声明?
- qgis - QGIS:为我的项目创建 HTML 网络地图时出现问题
- apache-kafka - 基于安装的 Confluent Operator:可从本地计算机访问 k8 集群
- r - R中.xlsx文件中的日期问题
- java - Java OpenGL未正确绘制垂直线
- c# - 如何根据 Combobox Selection 记录在 ButtonClick 中存储文件位置?
- javascript - 按住按钮时递增 - 材质 ui