javascript - 如何编译 require 语句?

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

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

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

最佳答案

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

例如,webpack 可以首先使用 babel 转译您的代码,然后将您的整个应用程序打包成一个文件,该文件将毫无问题地在浏览器中运行(因为它不会不再有任何 require)。

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

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

应用程序.js

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

关于javascript - 如何编译 require 语句?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48276528/

相关文章:

javascript - 无法将 "mysql2/promise"导入 Node.js 13/14 上的 ES 模块(MJS)

javascript - 如果从另一个模块调用该模块,为什么改变模块会更新引用,但如果从自身调用则不会?

javascript - JQuery 脚本的小问题

javascript - AWS Lambda 返回而不等待 promise

javascript - Backbone.js 中的过滤模型(不是集合)

javascript - 如何使用reduce、pipe和combinelatest求和?

javascript - Nodejs 中的 module.exports - fn 与 object

javascript - 异步 JavaScript - 回调与延迟/ promise

javascript - 通配符或星号 (*) 与命名或选择性导入 es6 javascript

node.js - 在 Node 14 中使用类型为 : module 的 sequelize-cli