问题标签 [browserify-shim]
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.
gruntjs - grunt browserify 反应需要 jquery
使用最新的节点和 Grunt 0.4.x,反应 0.10.x
通过 Grunt 对需要 jquery 的 React JSX 文件执行 browserify:
在阅读了类似的问题后,尝试将 shim 转换移动到package.json中。在我的package.json文件底部有以下内容:
无法让它通过浏览器化解析来自 Grunt 的简单 JavaScript 文件(仅使用“var $ = require('jquery');)。 Gruntfile.js具有:
运行 Grunt 会出现以下错误:
如果并且当我开始工作时,我假设可以将“reactify”添加到package.json中的转换数组中。
javascript - Angular 模块和 browserify
我设法在 package.json 中用这个来填充角度
这在 shim.js
这样我就可以在单独的脚本标签中包含 angular,并且它不会被 browserify 捆绑。但是我不知道如何为 ngRoute 做同样的事情。非常感谢一些帮助。
jquery - 将 browserify 与 npm jQuery 和非 npm 插件一起使用
我正在使用browserify来捆绑前端代码。到目前为止一切都很好,但是我在混合 npm 和非 npm 包时遇到了困难。例如,使用 npm 版本的 jQuery 和非 CJS 版本的 jQuery 插件。
我目前的解决方案是使用browser
key inpackage.json
指向 jQuery 的 dist,然后使用browserify-shim
将其添加为插件的依赖项。
有比我目前拥有的更清洁的方法吗?
编辑:我目前正在尝试使用 npm 并package.json
管理我的所有依赖项,所以我不想在这个项目上使用 bower。叫我疯了:)
包.json
knockout.js - 使用 Browserify + Knockout + Knockout 投影
我正在尝试将这两者都包含knockout
在knockout-projections
Browserify 的项目中。我正在使用browserify-shim
将它们绑定在一起。
不幸的是,knockout-projections
代码在需要时失败knockout
,无论是编译时错误还是运行时错误——取决于 shim 的设置。
为了说明这个问题,我建立了一个 github 存储库:brianmhunt/bshim-ko-testcase。
javascript - 如何使用 browerify-shim 正确填充 jquery / Backbone
我正在尝试构建一个使用主干/jquery 的独立 JS 库。这是一个代表我正在尝试构建的库的示例存储库。
我对这个库有几个目标:
- 不要暴露任何全局变量(即正确包装所有内容,以免泄漏)
- 不受 requireJS 等任何其他打包工具的影响
- 这个库可以加载到任何其他网站,我不希望与可能存在的 JS 发生任何冲突(这超出了我的控制范围),例如 requireJS
因此,我的理解是,我可以使用 browserify-shim 正确填充这些模块,以便它们可以require
在 browserify 中按预期使用。我很确定 shim 应该取消定义defines
,并且require
当它包装这些模块时,这将实现目标 #2。目标 #1 有望通过按预期使用 browserify 来实现。
我似乎真的无法让它工作,我不确定这是否只是我对 browserify-shim 的误解。无论我是否从命令行运行 browserify,我似乎都有同样的问题:browserify src/main.js -o build/main.js
或使用 gulp 构建.
基本上,它好像browserify-shim
甚至没有运行。如果你打开 index.html,你可以看到我加载的 requirejs 代码肯定会影响我的 lib,因为Backbone
它只是一个空对象,然后 requirejs 崩溃。
你可以在 repo 中看到我的 package.json ,它看起来大致是这样的:
不知道我在这里错过了什么,但我没有运气。我想知道是否有人可以提供帮助或至少证实我正在努力实现的目标是正确的并且可以使用browserify-shim
.
谢谢。
编辑
为了说明它绝对不是对模块进行填充,我创建了完全相同的abuild/main.js
和 a 。build/main-shimmed.js
我运行的 main.js 没有 shim 配置,而 shimed 有上述配置。我显然在这里遗漏了一些东西。
browserify - Browserify-shim 没有从 package.json 读取转换
我正在尝试使用browserify
构建我的团队正在处理的新项目,但它无法识别来自package.json
. 它将在 2 台机器上构建,但不会在另外 2 台机器上构建。
这是我的相关文章package.json
。
我正在从命令行运行 browserify。我的团队中有 4 台计算机,它正在一台Mac
和一Windows
台机器上运行,但我有 2Windows
台机器无法运行。我们都从同一个 repo 中提取,我们所有的browserify
版本npm
都是相同的。接下来我该怎么办?
ember.js - 浏览器化 Ember.js 1.7
最新的 1.7 Ember beta 打破了我的 gulp-browserify 任务(如下配置),但有以下例外:
Error: browserify-shim needs to be passed a proper browserify instance as the first argument.
Gulp 一直在愉快地浏览 Ember 直到 1.7(并且在最新的 1.6 中继续这样做,使用下面的配置)。我在 1.7 的发行说明中注意到模块系统经历了一些剧变。
我的问题是:这是 Ember(或者 Browserify)中的一个合法错误吗?或者,Ember 是否不再打算与 browserify 等工具一起使用,转而支持其他特定方法?
确切的配置:
包.json:
(注意,这个特定站点已经通过标准脚本标签嵌入了 jQuery,因此需要 browserify-shim 和global:
jquery dep 上的符号。)
gulpfile.js:
应用程序.js:
基本复制:
在测试目录中:
npm install gulp browserify gulp-browserify browserify-shim
- 确保存在到 deps 的路径:
"handlebars": "./scripts/lib/handlebars-v1.3.0.js"
"ember": "./scripts/lib/ember-1.7.min.js"
app.js
在上面添加我的示例- 添加我的
packages.json
上面 - 添加我的
gulpfile.js
上面 - 跑
gulp
- 将 Ember 1.7 换成 1.6 以取得成功。
谢谢!
jquery - gulp browserify shim and jquery depended
I am using gulp to build my scripts, and Im trying to "shim" jquery 1.11 to my js script so it could use it, my current codes:
SimpleScript:
skeleton.js:
Gulfile.js
All of this runs great and smooth... BUT I get an error that $ is not defined in the --> SimpleScript.init() that calls --> console.log('xxx');
and of course when I try to access jquery in the chrome console with --> "$" it is not defined
* notes - the file that gets created has jquery 1.11 inside it, I can see it. - I tried referencing as jquery, jQuery and $ all the same.
javascript - 使用带有 jQuery 插件的 Browserify
一些简短的背景:我正在使用 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 和相关部分
让我知道我还可以包括什么来帮助诊断错误。
javascript - Browserify Shim Buffer 核心模块
我正在尝试浏览我的库,其中有Buffer
核心模块在不同的地方使用。
我想Buffer
用我们正在使用的另一个库来填充这个核心。
我试图查看https://github.com/thlorenz/browserify-shim在那里我可以指定我想要填充的模块,但它似乎不起作用。
我创建了一个名为shim.js
在Package.json
在Gruntfile.js
(我正在使用grunt-browserify
)
现在,当我咕哝构建文件时,我仍然看到这是需要的:
在我的浏览器中抱怨