问题标签 [commonschunkplugin]
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.
webpack - Webpack - React Router V4 - 代码拆分异步块中的重复模块
主要问题是在使用 react-routerV4 和 webpack 2 进行代码拆分时,我有几个模块,我无法到达主要模块。
我的配置如下:
- 网页包 2.2.1
- 反应路线 4.1.1
我正在使用 react-router v4文档中的代码拆分
基本上,我不使用导入,但在路由配置上我有:像这样:
这对代码拆分非常有效,我为每个路由获得一个包,为 node_modules 获得另一个包,我稍后可以拆分。
我的问题是,我有一个 node_module (react-slick),它位于多个捆绑包中。所以我想把它放在主包里。
我的 webpack 配置是:
根据文档,这应该可以解决问题:
但是什么也没发生,我的 3 个捆绑包中仍然有“react-slick”。
有没有人暗示发生了什么?
任何帮助表示赞赏:) 谢谢!
webpack - 使用 libraryTarget 进行 Webpack 代码拆分
我有一个 Web 应用程序,它的(客户端)javascript 是用 es6 编写的,主入口点在app.js
.
我可以使用 webpack 将其捆绑起来,或者在外部引用 jQuery 等供应商库,或者将它们包含在捆绑包中 - 取决于偏好。为了让它在浏览器中正常工作,我必须指定libraryTarget
如下library
:
但是,我希望将我的供应商库单独捆绑在一起。
我可以使用 来做到这一点CommonsChunkPlugin
,但是它似乎不能很好地与library*
属性一起使用,因为它们也被应用于它。即我最终得到app.jQuery
的不仅仅是jQuery
如何分离出我的供应商代码并为需要它们的任何东西提供适当的全局变量,同时正确地将我的应用程序代码暴露给浏览器?
webpack.config
这里:
javascript - CommonsChunkPlugin 中的 minChunks 如何影响自定义 css 样式渲染?
React CSS 样式的渲染时间晚于自定义 CSS 样式,后者在某种程度上依赖于minChunks
.
当我在供应商中更改计数 >= 5 时,自定义样式不会失真。
webpack - 如何在不将它们捆绑在一起的情况下动态导入脚本?
我正在尝试根据某些用户操作动态导入带有 webpack 魔术注释(使用 commons chunk 插件)的脚本。
我试过这个(假设用户的操作会加载'a'脚本):
它没有用。我得到的只是一个错误:
所以我试过这个:
它起作用了,但不是我想象的那样。我在文件夹中的所有脚本commmons
都捆绑到一个大文件 ( 0.js ) 中,并在 promise 中返回。
我的问题是:如何单独加载它们?有没有办法给它们命名?
谢谢
javascript - chunkhash webpack 中的清单含义
我正在学习 webpack 以及如何使用 chunkhash 功能。在 github 上的这个示例中,它在插件中使用了“清单”名称。
它是干什么用的?我没有找到任何关于它的用例的解释。
谢谢你。
reactjs - 使用 WebPack CommonsChunkPlugin 提取重复的 javascript 代码
我正在使用WebPack CommonsChunkPlugin提取重复代码并减少 JavaScript 代码大小。我有两个 html 页面和两个条目。我还添加了ReactJs供应商条目。到目前为止,在webpack.config.js我们有:
此配置结果与webpack-bundle-analyzer:
如您所见,有一些重复的代码,一些在红色区域,另一些在绿色区域。我想从家中提取这个 js 代码并将包提取到一个单独的包中。为了提取红色区域代码,即lodash库,我在 webpack 配置中添加了这些行:
但它没有按预期工作,lodash 库代码仍然在 home 和 about bundles 中,webpack 还创建了一个名为 lodash 的 bundle,它几乎是空的并且不包含任何 js 库。
关于如何解决它的任何想法?提取绿色代码怎么样?
git - 如何将一个供应商块文件(webpack)用于多个反应项目
我有不同的 git 和不同的反应应用程序。每个应用程序都应该使用相同的供应商块文件和外部包(React,ReactDOM ...)
项目设置:
每个都webpack.config.js
包含此配置,但具有不同的库名称:
问题:
Webpackvendor.bundle.js
专门为当前库/项目构建一个,而不是供全球使用,是否有一个选项用于 webpack 创建一个vendor.bundle.js
可以包含在单个页面上的选项,其中两个应用程序都可以基于此文件加载:
例子:
webpack - CommonsChunkPlugin 不适用于电子
我有一个使用 Webpack 2 构建的电子应用程序。我有一个自定义模块 ( mymodule
),我想成为其他包引用的单独包。问题是当我在CommonsChunkPlugin
我的主进程中使用时,电子在应用程序启动时锁定。我可以看到电子徽标出现在文档中,但窗口从未出现。
请注意,它不一定是我编写的模块,我可以使用lodash
并CommonsChunkPlugin
获得相同的结果。
有趣的是,如果我CommonsChunksPlugin
以相同的方式使用渲染器进程,一切正常。
我整理了一个简单的电子应用程序来显示这个问题。
github repo 提供了有关情况的更多详细信息,但这里是重要部分:
电子主要流程:
主要的 webpack 配置:
在这种状态下,应用程序将无法运行。如果您然后进入webpack.main.js
文件并注释掉CommonsChunkPlugin
这些行中的使用,它将开始工作:
这是我的环境信息:
那么这里发生了什么?这是电子、webpack 或我的代码的错误吗?