在我的项目(最新提交)中,我的 package.json 中有两个导出:
"exports": {
".": "./dist/index.js",
"./react-lazy": "./dist/react-lazy.js"
},
Run Code Online (Sandbox Code Playgroud)
在 JS 项目中使用它效果很好,但 TS 项目抱怨在我将一个模块拆分为子路径导出后找不到类型。
然后我尝试了我在另一个答案中看到的“扩展”导出版本:
"exports": {
".": {
"import": "./dist/index.js",
"types": "./types/index.d.ts"
},
"./react-lazy": {
"import": "./dist/react-lazy.js",
"types": "./types/react-lazy.d.ts"
}
},
Run Code Online (Sandbox Code Playgroud)
不去。
然后我尝试了另一种方法typesVersion:
"typesVersions": {
"*": {
".": "./types/index.d.ts",
"./react-lazy": "./types/react-lazy.d.ts"
}
},
Run Code Online (Sandbox Code Playgroud)
还有,不去。是什么赋予了?现在我对这里的问题有点困惑。
尝试此操作时,我从测试项目中npm link启动了该项目并运行。npm link @fatso83/retry-dynamic-importtsc --lib es2015,dom --noEmit main.ts
我基本上只是测试这些行是否通过编译器:
import { dynamicImportWithRetry } from "@fatso83/retry-dynamic-import";
import reactLazy from "@fatso83/retry-dynamic-import/react-lazy";
Run Code Online (Sandbox Code Playgroud)
目前,上述所有尝试都以
$ tsc --lib es2015,dom …Run Code Online (Sandbox Code Playgroud)