【发布时间】:2017-05-01 23:32:11
【问题描述】:
通过使用require(./filename),我可以在 filename 中包含并执行代码,而无需在 filename 本身中定义任何导出。
在 ES6 中使用 import 的等价物是什么?
谢谢
【问题讨论】:
标签: javascript node.js ecmascript-6 require javascript-import
通过使用require(./filename),我可以在 filename 中包含并执行代码,而无需在 filename 本身中定义任何导出。
在 ES6 中使用 import 的等价物是什么?
谢谢
【问题讨论】:
标签: javascript node.js ecmascript-6 require javascript-import
等价的很简单:
import "./filename";
以下是一些可能的语法变化:
import defaultMember from "module-name";
import * as name from "module-name";
import { member } from "module-name";
import { member as alias } from "module-name";
import { member1 , member2 } from "module-name";
import { member1 , member2 as alias2 , [...] } from "module-name";
import defaultMember, { member [ , [...] ] } from "module-name";
import defaultMember, * as name from "module-name";
import "module-name";
来源: MDN
【讨论】:
code.js 的文件,其中我有const foo = 1; console.log(foo);,并且我在main.js 中说import "code.js",我将无法访问foo 在main.js 中.但是,1 将打印到控制台,因为code.js 中的代码将执行。如果这有点难以理解,这里有一个 StackBlitz 来展示我在做什么。
exports 就没有办法包含范围引用?我正在考虑当 HTML 文件中有多个脚本标签时会出现的行为。