问题标签 [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.

0 投票
1 回答
1278 浏览

javascript - 使用带有 gulp 的 browserify 运行多个转换

我正在使用带有 gulp 的 browserify 将 javascript 代码捆绑到我的 Web 应用程序中,并且我正在使用 babelify 将代码转换为与 es6 兼容,如下所示。

现在,我意识到我需要使用browserify-shim,并且根据文档使用它的方式是在package.json中包含以下json:

有没有办法使用 gulp 使用多个转换?

如是) {

什么是正确的语法?在这种情况下,指定它们的顺序是否对创建最终包很重要?

}

别的 {

如果我指定然后将 shim 转换为 package.json,但我将 babelify 转换保留为 gulpfile,那么 browserify 生成最终包时会出现问题吗?两个转换都会执行吗?

}

谢谢!!

0 投票
1 回答
664 浏览

gulp - jquery和signalR上的Browserify + shim不起作用

我正在使用 gulp + browserify 来捆绑我的源代码,但我总是遇到同样的错误:找不到 jQuery。请确保在 SignalR 客户端 JavaScript 文件之前引用 jQuery。SignalR 得到 $ = 未定义...

我将源分成两个包:供应商和应用程序。供应商捆绑包从 packages.json 获取 lib 的 id,并且捆绑包需要它。应用程序包获取主条目,我通过 bundle.external 将 id 的库传递给此包。

这是我的 packages.json :

在这里,我大吃一惊:

供应商捆绑包没有入口点,它只需要 lib。这是我的应用程序包条目:

我已经尝试使用带有全局选项的 browserify-shim 转换,但这也不起作用。

0 投票
1 回答
227 浏览

browserify - browserify + browserify-shim 角度全局

我通过索引页面上的脚本标签包含来自谷歌 cdn 的 angular js。

我的 package.json 中有以下内容:

我还在使用带有多个输出包的 grunt-browserify:

我遇到的问题是,尽管 browserify-shim 被配置为使用 global:angular,但我的一个输出文件中包含了角度源。

我正在使用以下模块:

0 投票
2 回答
993 浏览

laravel-5 - 如何在 Laravel 5 上使用 Elixir 和 Browserify Shim 设置 Browserify?

我正在尝试在 Laravel 5.2 上使用 Elixir 和 Browserify Shim 设置 Browserify,以便在我的 JavaScript 文件中使用 Gulp,但到目前为止我运气不佳。这应该很简单,但事实并非如此。

这是我的package.json

gulpfile.js

入口脚本main.js如下所示:

应用程序.js

简而言之:Utils依赖于$,而App依赖于$Utils

当我从终端点击 gulp 时,会正确创建 bundle.js。所有脚本都包含在 Browserify 代码中(如预期的那样)。每个脚本都包含所有依赖项,就像我在 package.json 中配置的那样,所以这部分看起来也不错。

问题是我包含的所有依赖项都是空对象。例如,app.js 中的 Utils 是空的,当我尝试调用它的方法“doSomething”时出现错误。控制台日志打印出一个空对象“ {} ”而不是真实对象。唯一正确包含的脚本是 jQuery,它不是一个空对象。

这里有什么问题?我是否需要在我的 JS 文件或配置中进行一些更改才能使其正常工作?看起来我非常接近解决方案,但它仍然不起作用,我根本无法使用它。

0 投票
1 回答
531 浏览

node.js - karma-browserify 覆盖率报告包含文件包含路径而不是源代码

使用 karma-browserify 对 Jasmine 进行单元测试。测试正确运行,但覆盖率报告显示文件包含路径而不是源代码。您可以通过安装以下项目并运行“gulp unit”来重现这一点:

https://github.com/bshack/shackstack

以下是覆盖率报告内容的示例:

这是我的 karma.config:

有什么想法吗?

0 投票
1 回答
186 浏览

javascript - 别名和 varName = require("module") 之间的 browserify-shim 区别

browersify-shim用来将 jquery、bootstrap 和我的自定义 js 文件捆绑到一个最终包中。

我的自定义 js 文件对 没有任何依赖关系jQuery,但bootstrap确实如此。

我有以下package.json

现在在我的脚本文件中,我必须执行以下操作:

package.json在中添加别名到“jquery”和做之间有区别吗var window.$ = require('jquery');

在某些地方,我看到人们同时在做上述两个,难道只有一个就足够了吗?

其次,即使我的自定义 js 文件都不依赖于它,为什么我需要同时显式地require定义jQuery和。bootstrap有没有办法告诉browserify-shim把所有的东西都捆绑在package.json里面,反正我是在告诉那里的所有依赖项和别名。为什么要重复要求我的脚本文件中的每个模块。

0 投票
1 回答
710 浏览

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

我在我的 html 文件中添加了 jQuery 作为脚本标记,并将其添加到package.json如下browserify-shim所示:

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

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

现在我知道我可以通过应用全局变换来解决它,但我找不到一种容易做到的方法。

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

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

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

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

0 投票
0 回答
626 浏览

javascript - 将 browserify shim 与 browserify insertGlobalVars 选项一起使用

我正在browerifybrowserify-shim我们一起使用它运行的环境的版本underscorejQuery定义。我发现自己一遍又一遍地需要相同的模块,所以去寻找一种自动化的方法。选项 opts.insertGlobalVars 可以,但我可以让它与 browserify-shim 一起工作吗?

包.json

gruntfile.js

get被_识别为变量并尝试定义它。不幸的是,这导致找不到文件。由于我自己不包含该文件,因此我无法提供路径,也无法提供上述示例中的路径。

错误:无法从“路径/到/文件”中找到模块“jquery”

编辑:在我的模块中直接使用 require('underscore')确实有效。

0 投票
1 回答
541 浏览

javascript - 使用带有 browserify-shim 的 Bootstrap JS 组件

我试图弄清楚如何正确使用 browserify-shim 与 bootstrap js 或任何其他组件进行传导。我并不总是想包含整个连接的 JS 文件,所以我将模块拆分为单个垫片,这是我的 package.json 的摘录

现在,当我在twbs-alert某个地方需要该模块时,我可以将它包含在require('twbs-alert'). 这是您将如何做到的还是拆分组件真的很重要,因为在缩小过程中无论如何都会删除未使用的组件?

编辑

由于v4 的 bootstrap完全用 es6 编写,shim 方法将过时,因为您可以通过import 语句导入模块

0 投票
1 回答
268 浏览

gulp - 将 karma-browserify 与 browserify-shim 一起使用时出错

我正在尝试将 karma-browserify 与 browserify-shim 一起使用,但没有成功。这是一个重现错误的仓库:https ://github.com/pelizza/karma-browserify-shim

与 browserify 捆绑时一切正常,似乎 karma 在使用 karma-browserify 预处理文件时根本找不到填充依赖项。

我找不到太多关于这个问题的信息,除了堆栈溢出的这个问题,没有解决方案:karma-browserify 在尝试加载使用 browserify-shim 填充的模块时抛出错误