javascript - 找不到使用 Browserify 创建的模块

标签 javascript node.js browserify

我使用 Browserify 和 Gulp 来捆绑 JavaScript 模块。我有一个使用以下代码生成的模块:

browserify("./index.js", {
        standalone: "lib1"
      })
      .bundle()
      .pipe(source("lib1.js"))
      .pipe(gulp.dest('DEST'));

Index.js 文件包含以下代码:
module.exports = require('./lib/lib1.js');

然后我有第二个模块,它导入前一个并且工作正常。我使用以下代码捆绑第二个模块
browserify("./index.js", {
        standalone: "lib2"
      }).external('lib1')
      .bundle()
      .pipe(source("lib2.js"))
      .pipe(gulp.dest('DEST'));

如果我在浏览器中导入这两个模块,我会在第二个模块中收到错误,表明它找不到模块 lib1 .有谁知道我做错了什么?

在浏览器中我先导入lib1和他们lib2
<script src='lib1.js'></script>
<script src='lib2.js'></script>

最佳答案

我已经解决了将 Gulp 4 降级到 Gulp 3 的问题。这不是一个令人满意的解决方案。

在 Gulp 3 中,我使用以下代码生成第二个文件:

browserify("./index.js", {
      standalone: "lib2"
    })
    .bundle()
    .pipe(source("lib2.js"))
    .pipe(gulp.dest('DEST'));

使用 Gulp 3 我可以导入这两个库,并且工作正常。

关于javascript - 找不到使用 Browserify 创建的模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53889260/

相关文章:

javascript - 在 JS 中对数字文字调用函数的规则是什么?

javascript - 一行上有多个分号

javascript - 谷歌分析;将自定义变量与事件一起使用

javascript - 如何唯一合并两个 JSON 文件?

javascript - 在 IE 上运行 React 应用程序时出现语法错误

javascript - grunt-browserify 别名停止工作

javascript - 找不到模块 'regenerator-runtime/runtime'

javascript - 根据 Openlayers 3 中获取的数据应用自定义图标

mysql - sailsjs 框架不支持事务

node.js - Express.js REST API 无法在 Heroku 上运行