一些简短的背景:我正在使用 browserify 和 browserify-shim(以及 gulp 构建)来创建一个网络应用程序。在此问题之前,我require
从 npm 输入 jquery,所以我没有任何问题。一旦我开始进行一些优化,我就意识到包含 jQuery 的捆绑包有多么庞大。所以现在我从 CDN 中获取带有 script 标签的 jQuery 并将其放在 bundle.js 文件之前。但是我在将 jQuery 声明为全局并在 browserify 和 browserify-shim 中正确填充我的 jQuery 插件时遇到问题。当我运行 gulp 构建时,我不断收到相同的错误:
[gulp] gulp-notify: [Compile Error] module "jquery" not found from "/Volumes/Chetan/Users/cshenoy/Projects/urbanstems-node/app/plugins/jquery.inview.js"
似乎 browserify-shim 并没有意识到 jQuery 是一个全球性的。
作为参考,我使用的是inview 插件。
这是我的 package.json 和相关部分
"browser": {
"inview": "./app/plugins/jquery.inview.js"
},
"browserify-shim": {
"jquery": "global:jQuery",
"inview": {
"depends": [
"jquery"
]
}
}
让我知道我还可以包括什么来帮助诊断错误。