javascript - 使用 require.js 加载 browserify boundle.js

标签 javascript node.js requirejs browserify

我们有与 require.js 一起工作的框架 我们正在加载如下包

define(["converter/service/utils"], function (utils) {

现在我们可以使用 utils 文件了。

现在我们有了一个新的 js 文件,它像

browserify main.js | uglifyjs > bundle.js

我已将 boundle.js 文件添加到我的项目(在服务文件夹下),我想加载它,但它不起作用...

我尝试像下面这样加载它:

   define(["converter/service/bundle"], function (bundle) {

但是包是空的(调试时...)

知道如何使用 require.js 加载 browserfiy 文件吗?

我知道在 broswerify 的文档中我们应该添加它

<script src="bundle.js"></script>

我们使用 require.js 来加载模块,我能够使用其他 js 文件来加载模块... 例如,如果我将这个文件保存在我的项目中

https://rawgit.com/hugeen/lebab-experiment/master/lebab.js

我可以用 require.js 加载它 ...

编辑:

我所做的是 npm init &

npm install lebab --save

创建文件main.js并放入以下代码

var lebab = require("lebab");

然后运行命令

browserify --standalone someName main.js | uglifyjs > bundle.js

一切顺利

bundle.js文件放在converter/service文件夹下

并尝试像下面这样要求它:

define(["converter/service/bundle"], function (bundle) {

或者还有

define(["converter/service/someName"], function (bundle) {

它不起作用...我在这里缺少什么?

EDIT2

由于我们使用我们的工具(包装 require.js),因此很难跟踪正确的错误,因此我使用一些工具(require.js)来验证它 使用 webstoram vscode 进行一些项目调整。我只想验证捆绑是否正确创建...

最佳答案

您的包不包含允许 RequireJS 加载它的必要代码,因为默认情况下 browserify 不包含所需的代码。获得所需结果的一种方法是使用 --standalone 告诉 Browserify 放置一个 UMD wrapper在你的包周围:

browserify --standalone someName main.js | uglifyjs > bundle.js

someName 是 UMD 包装器在检测到它未在 CommonJS 或 AMD 环境中运行时将使用的名称。在这种情况下,它会将您的包导出为全局空间中的符号 someName。您必须决定要在那里使用什么名称。

有了 UMD 包装器,您的包将检测到它正在 AMD 环境中运行(因为 RequireJS 使 define 可用),并将调用 define 进行注册本身与 RequireJS 作为一个模块。

关于javascript - 使用 require.js 加载 browserify boundle.js,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45219995/

相关文章:

javascript - 如果 JavaScript 中 if block 返回,还需要 else 吗?

javascript - 使用 jquery 编写完美动画的正确方法

javascript - 将 glDatePicker 渲染为动态更改的日期

node.js - 将 Node 模块的本地修改部署到 Cloud Functions for Firebase

node.js - Jest : Couldn't find preset "@babel/env" relative to directory

unit-testing - 使用 QUnit、Grunt 和 RequireJS 进行单元测试

javascript - 如何在EmberJS中的N个嵌套子级中使用parentView.template

javascript - 如何在每个循环 Handlebars js中添加另一个值

javascript - 要求.JS : loading modules that are dependent on each other?

javascript - RequireJS 和 window.define() 冲突