gpt4 book ai didi

javascript - 允许使用 grunt browserify 进行全局转换

转载 作者:行者123 更新时间:2023-11-29 21:34:28 25 4
gpt4 key购买 nike

我已将 jQuery 作为脚本标记添加到我的 html 文件中,并将其添加到 package.json 以便与 browserify-shim 一起使用,如下所示:

  "browserify": {
"transform": [
"browserify-shim"
]
},
"browserify-shim": {
"jquery": "global:jQuery"
},

我可以通过简单的 require('jquery') 调用在我的主脚本文件中公开它。

问题是我正在使用一些 jQuery 插件,它们在内部执行 require('jquery') 并且由于 browserify 转换不适用于依赖项的依赖性,这导致 browserify 提示捆绑,因为它找不到 jQuery

现在我知道我可以通过应用全局转换来解决这个问题,但我找不到简单的方法。

Browserify 文档说您不能在包文件中应用全局转换,因此以下内容不起作用(我认为会):

  "browserify": {
"global-transform": [
"browserify-shim"
]
},

"browserify": {
"transform": [
"browserify-shim"
],
"global": true
},

我还尝试如下将选项添加到我的 Gruntfile.js,但即使那样也不起作用:

browserify: {
options: {
global: true
},
dist: {
files: {
'js/bundle.js': 'js/script.js'
}
},
},

最后一个选项是手动添加一个 browserify-shim 到每个依赖项的 package.json,但我不想这样做,因为这意味着每次我添加了一个新插件,我将不得不重复相同的过程。

有什么办法可以缓解上述问题吗?

最佳答案

您应该能够通过提供带有散列选项的转换来应用全局转换:

 "browserify": {
"transform": [
["browserify-shim", {global: true}]
]
}

关于javascript - 允许使用 grunt browserify 进行全局转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35228943/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com