【问题标题】:How to compile require statements?如何编译require语句?
【发布时间】:2018-06-24 21:11:41
【问题描述】:

我的 .js 文件中有以下 require 语句,这些语句是从 ES2017 转译的,但是,浏览器仍然无法识别这些命令(未定义 require)。我该如何解决这个问题?

  this.e = require('../../e.js'),
  this.a = require('../../a.js'),
  this.cb = require('../../cb.js'),

【问题讨论】:

  • “不认识”是什么意思?
  • 我在控制台中收到一个错误,提示未定义 require()。
  • 我相信,你需要 System.js,因为 browser-js 没有 require(这是 node.js 的功能)。

标签: javascript commonjs es6-modules es6-module-loader transpiler


【解决方案1】:

转译您的代码不足以使其在浏览器中运行。您将需要一个像webpack 这样的构建系统来将您的代码捆绑到一个(或多个)文件中,您可以将这些文件包含在您的网络应用程序中。

例如webpack 可以首先使用babel 转换您的代码,然后将您的整个应用程序捆绑到一个文件中,该文件将在浏览器中正常运行(因为它不再有任何require)。

您可以使用的另一个解决方案是在您的脚本标签中使用type="module"

<script type="module" src="/my/app.js"></script>

app.js

import a from "../../a.js";
...

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-08-20
    • 1970-01-01
    • 1970-01-01
    • 2020-06-30
    • 2018-10-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多