Skip to content

参考文章: 一文彻底搞懂 package.json 中的 exports, main, module, type

使用 rollup 打包 esm 项目,项目下有子项目,但是子项目没有成功导出类型

import { xx } from 'my-package/sub'
import { xx } from 'my-package/sub'

解决方案:

在 package.json 中,使用 export 、typesVersions 字段

    "exports": {
        ".": {
            "types": "./dist/pro.d.ts",
            "import": "./dist/pro/index.js"
        },
        "./base": {
            "types": "./dist/base.d.ts",
            "import": "./dist/base/index.js"
        },
        "./*": [
            "./*",
            "./*.d.ts"
        ]
    },
    "typesVersions": {
        "*": {
            "*": [
                "./dist/*",
                "./*"
            ]
        }
    },
    "exports": {
        ".": {
            "types": "./dist/pro.d.ts",
            "import": "./dist/pro/index.js"
        },
        "./base": {
            "types": "./dist/base.d.ts",
            "import": "./dist/base/index.js"
        },
        "./*": [
            "./*",
            "./*.d.ts"
        ]
    },
    "typesVersions": {
        "*": {
            "*": [
                "./dist/*",
                "./*"
            ]
        }
    },