NodePackageImporter
层次结构
- NodePackageImporter
索引
构造函数
属性
构造函数
constructor
- new
Node (entryPointDirectory?: string): NodePackageImporterPackage Importer -
NodePackageImporter 具有一个可选的
entryPointDirectory选项,它是 Node 包导入器在解析来自磁盘上文件以外的源的pkg:URL 时应开始的目录。这将用作 Node 模块解析 算法中的parentURL。为了被 Node 包导入器找到,包需要位于
entryPointDirectory或其父目录之一(直至文件系统根目录)中的 node_modules 文件夹内。相对路径将相对于当前工作目录解析。如果未提供路径,则默认为 Node.js 入口点的父目录。如果不可用,则会引发错误。
参数
-
可选entryPointDirectory: string
返回值 NodePackageImporter
-
属性
私有 只读 [nodePackageImporterKey]
[nodePackageImporterKey] : true
用于区分此类型与任何任意对象。
内置的 Node.js 包导入器。它根据标准 Node.js 解析算法从 node_modules 加载 pkg: URL。
Node.js 包导入器作为可以添加到
importers选项的类公开。编写 Sass 包
包作者可以通过其
package.json清单控制向其用户公开的内容。推荐的方法是向package.json添加sass条件导出。这允许包用户编写
@use "pkg:uicomponents"来加载node_modules/uicomponents/src/scss/index.scss中的文件。Node.js 包导入器支持 Node.js 包入口点 支持的各种格式,允许作者公开多个子路径。
这允许包用户编写
@use "pkg:uicomponents";以导入根导出。@use "pkg:uicomponents/colors";以导入颜色部分。@use "pkg:uicomponents/theme/purple";以导入紫色主题。请注意,虽然库用户可以依靠导入器来解析 部分、索引文件 和扩展名,但库作者必须在
exports中指定完整的文件路径。除了
sass条件外,style条件也是可以接受的。如果 Sass 是相关文件类型,则 Sass 将匹配default条件,但作者不建议依赖此条件。值得注意的是,键的顺序很重要,导入器将解析为第一个键为sass、style或default的值,因此您应该始终将default放在最后。为了帮助尚未使用
exports字段过渡到包入口点的包作者,Node.js 包导入器提供了几个后备选项。如果pkg:URL 没有子路径,则 Node.js 包导入器将在package.json的根目录中查找sass或style键。这允许用户编写
@use "pkg:uicomponents";以导入index.scss文件。最后,Node.js 包导入器将在包根目录中查找
index文件,解析部分和扩展名。例如,如果文件_index.scss存在于uicomponents的包根目录中,则用户可以使用@use "pkg:uicomponents";导入该文件。如果
pkg:URL 包含包入口点中没有匹配项的子路径,则 Node.js 导入器将尝试在包根目录中找到该文件,解析文件扩展名、部分和索引文件。例如,如果文件src/sass/_colors.scss存在于uicomponents包中,则用户可以使用@use "pkg:uicomponents/src/sass/colors";导入该文件。