【问题标题】:Cannot find module created with Browserify找不到使用 Browserify 创建的模块
【发布时间】:2019-05-22 04:33:54
【问题描述】:

我使用 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>

【问题讨论】:

  • module.exports = require('./lib/ lib1.js'); 路径中的空格是故意的吗?另外,browserify 的工作不就是将所有模块捆绑到一个脚本中吗?
  • 不,这是一个错误。我把它固定在这个问题上。我不想捆绑模块。我想在 lib2 上使用模块 lib1。

标签: javascript node.js browserify


【解决方案1】:

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

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

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

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-01-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多