我在 React to TypeScript 下创建了一个组件库。在tsconfig.json中规定了以下内容:
{
"compilerOptions": {
...
"paths": {
"@lib": ["src/lib"],
"@lib/*": ["src/lib/*"]
}
现在,相反
import {} from '../../../from/field/ComboBox';
我写得更简短:
import {} from '@lib/from/field/ComboBox';
在开发过程中,通常会计算这些路径。但是,在连接库的另一个项目中生成并发布包后,会收到错误:
build/dist/lib/form/combo/ComboBox.d.ts
(3,40): Cannot find module '@lib/form/list/List'.
如何让编译器在构建时将这些路径重新计算为相对路径?
解决方案:
http://goenning.net/2017/07/21/how-to-avoid-relative-path-hell-javascript-typescript-projects/
请参阅最后一个答案:
VSCode 中 TypeScript 文件中的绝对模块路径解析
与 ts-simple-ast(:
https://gist.github.com/rifler/e6123e90e172814fe23d5a6a11ed5eb1