术语
import 语句的说明符是 from 关键字之后的字符串,例如 import { sep } from 'path' 中的 'path'。
说明符也用于 export from 语句,并作为 import() 表达式的参数。
-
相对说明符,如
'./startup.js'或'../config.mjs'。 它们指的是相对于导入文件位置的路径。 -
绝对说明符,如
'file:///opt/nodejs/config.js'。 它们直接且明确地引用完整的路径。
The specifier of an import statement is the string after the from keyword,
e.g. 'path' in import { sep } from 'path'. Specifiers are also used in
export from statements, and as the argument to an import() expression.
There are four types of specifiers:
-
Bare specifiers like
'some-package'. They refer to an entry point of a package by the package name. -
Deep import specifiers like
'some-package/lib/shuffle.mjs'. They refer to a path within a package prefixed by the package name. -
Relative specifiers like
'./startup.js'or'../config.mjs'. They refer to a path relative to the location of the importing file. -
Absolute specifiers like
'file:///opt/nodejs/config.js'. They refer directly and explicitly to a full path.
Bare specifiers, and the bare specifier portion of deep import specifiers, are strings; but everything else in a specifier is a URL.
file:, node:, and data: URLs are supported. A specifier like
'https://example.com/app.js' may be supported by browsers but it is not
supported in Node.js.
Specifiers may not begin with / or //. These are reserved for potential
future use. The root of the current volume may be referenced via file:///.