You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何配置JavaScript库/模块以支持按路径(斜杠)实现部分导入?

功能定义与实现说明

功能名称

你要实现的这类能力正式名称是 子路径导出(Subpath Exports),部分社区资料中也会称其为「多入口按需导出」。这种设计通常会配合摇树优化(Tree Shaking)能力,让用户可以只引入需要的功能模块,避免全量导入带来的冗余体积。

核心实现逻辑

  • 对于Node.js生态的npm包,直接在包根目录的package.json中配置exports字段即可完成子路径映射,基础示例如下:
{
  "name": "myModule",
  "main": "./dist/index.js",
  "exports": {
    ".": "./dist/index.js",
    "./things": "./dist/things/index.js",
    "./utils": "./dist/utils/index.js"
  }
}

上述配置中,.对应的是全量导入入口import * from 'myModule',./things对应的就是子路径导入import thing1, {thing2} from 'myModule/things'。

  • 如果你开发的是前端类库,除了配置package.json的exports字段,还需要额外适配打包工具的多入口构建规则,以及TypeScript的路径映射规则,确保类型定义也可以随子路径正常导入。
  • 全量入口不需要重复编写逻辑,直接重新导出所有子模块的内容即可,保证全量导入和子路径导入的内容一致性。

参考资料方向

你可以按需查阅对应工具的官方文档获取详细配置规则:

  1. Node.js 官方的包模块导出规范
  2. 你所使用的打包工具(Rollup/Vite/Webpack)的多入口构建、子路径导出相关文档
  3. TypeScript 官方的模块路径映射、类型导出相关文档

内容的提问来源于stack exchange,提问作者Robel Robel Lingstuyl

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 18:36:06