问题标签 [webpack-merge]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
4033 浏览

javascript - 使用 webpack-merge 将加载器添加到规则 `use` 数组中

我使用webpack-merge为开发和生产环境合并我的 webpack 配置文件。为了在 prod 模式下提取 CSS,我使用了mini-css-extract-plugin。根据它的文档,我用它代替了style-loader仅在开发过程中使用的 。此时,我的 CSS 块的 webpack 配置如下所示:

这行得通,但由于我使用的是webpack-merge,我想在我的常用配置文件中避免这种逻辑。现在,我试图像这样拆分它并webpack-merge合并各种加载器:

使用基本的mergefn,use数组不会被合并,而是被替换,这会导致错误:ModuleParseError: Module parse failed: You may need an appropriate loader to handle this file type.

所以我尝试使用merge.smartStrategy({ 'module.rules.use': 'prepend' })(),但出现错误:TypeError: this[MODULE_TYPE] is not a function. 有什么我想念的,或者这根本不可能吗?

0 投票
1 回答
1918 浏览

typescript - TS2345 类型参数不可分配给类型参数:使用在另一个模块中声明的一个模块

我一直在尝试使用 Webpack、webpack-merge 和使用 TypeScript 的单独开发 Webpack 文件来解决问题,并且我有点意识到我需要声明一个从webpack.common 传递的类型别名函数。 ts文件到webpack.dev.ts文件。

这是我最初尝试做的事情。我有一个加载基本配置的webpack.common.ts文件:

然后我有单独的使用 webpack-merge 的 prod 和 dev Webpack 文件。这是webpack.dev.ts

这会导致方法内部出现错误merge

'import(".../node_modules/@types/webpack/index").Configuration' 类型的参数不能分配给 'import(".../node_modules/@types/webpack-merge/node_modules/ 类型的参数@types/webpack/index").Configuration'。

基于此,看起来 webpack-merge 有自己的 Webpack 类型,而 Webpack 和 webpack-merge 使用的是两种不同的Configuration类型。

我尝试更新 webpack-merge 类型,以便它导入 Webpack 的类型而不是它自己的集合。

在 webpack-merge 的index.d.ts文件中:

这样做,我现在从webpack.dev.tsmerge的方法内部得到一个不同的错误:

'{ devServer: { compress: boolean; 类型的参数 内容基础:字符串;historyApiFallback:布尔值;热:布尔值;打开:布尔值;端口:号码;}; 开发工具:“源地图”;外部:{“反应”:字符串;'react-dom':字符串;}; 模式:“发展”;}' 不可分配给“配置”类型的参数。

将鼠标悬停merge在 VS Code 中,这是我得到的类型信息:

(别名)合并(...configs:配置[]):配置

我应该更新 webpack-merge 的导入路径,以便它使用相同的类型声明吗?以及如何更新merge类型以接受这些 webpack-dev-server 类型(无需使用any)?

0 投票
2 回答
23013 浏览

reactjs - 从 webpack-cli 获取错误:webpack 配置中的“TypeError:merge is not a function”

我正在使用 webpack-merge 将两个 webpack.config 文件组合在一起,但我不断收到错误“TypeError: merge is not a function when I run the command”webpack --config ./config/webpack.config.prod.js "

有没有其他人遇到过这个问题?

webpack.config.prod.js

0 投票
0 回答
314 浏览

javascript - 你如何使用 webpack-merge 并做出反应?

我一直在尝试为基于反应的应用程序制作 webpack 配置,在我开始使用 webpack-merge 并拥有单个 webpack.config.js 文件之前,它正在工作。我做了很多阅读,但我无法找到解决方案,并且想知道是否有办法让我拥有拆分 webpack 配置。

任何帮助将非常感激!

我得到的错误是:

我的 webpack 配置文件:
webpack.common.js

webpack.config.js

webpack.dev.js

webpack.prod.js

我的其他文件:
App.js

索引.html

index.js

.babelrc

包.json

0 投票
0 回答
31 浏览

node.js - 使用 UglifyJS 和 webpack-merge-and-include-globally 创建 stat.json

我试图找出是否有办法让我获得stat.jsonWebpack插件包。我专门使用webpack-merge-and-include-globallyUglifyJS

Webpack 配置

0 投票
1 回答
1105 浏览

vue.js - TypeError:不支持合并未定义

$ quasar dev在我的 Vue 项目上运行时出现此错误