我正在阅读Webpack
的官方文档中的匀场,但我仍然无法理解它的含义?
由于我是Webpack的新手,我也尝试过做一些RND
,但我无法从中得到正确的答案。我对Shimming
有几个问题,如下所示:
- 什么是
Shimming
? Shimming
实际上是做什么的?- 为什么webpack中需要
Shimming
? - 它是如何工作的?
Shimming
的利弊。
如果有人知道,即使是上面提到的问题的答案很少,请让我知道。
我正在阅读Webpack
的官方文档中的匀场,但我仍然无法理解它的含义?
由于我是Webpack的新手,我也尝试过做一些RND
,但我无法从中得到正确的答案。我对Shimming
有几个问题,如下所示:
Shimming
?Shimming
实际上是做什么的?Shimming
?Shimming
的利弊。如果有人知道,即使是上面提到的问题的答案很少,请让我知道。
1条答案
按热度按时间mv1qrgav1#
一些库依赖于全局变量,例如,一个jQuery插件可能期望全局变量“$”可用。
如果不使用
ProvidePlugin
填充该变量,您将得到错误$ is not defined
。简单地说,shimming会用
require('jquery')
替换JavaScript模块中的所有全局$
变量,在一些遗留库中,您还需要shimmingjQuery
或window.$
,因为插件只执行基本的文本替换。您只需要对库或任何您无法控制的代码进行填充。在应用程序模块中,您应该使用
import $ from 'jquery'
导入jQuery,并避免使用全局变量。