在tsconfig.json
中使用以下配置
{
"compilerOptions": {
"paths": {
"@foobar/*": ["packages/*/src"]
}
}
}
项目布局看起来像:
- 项目根
- tsconfig.json
- 包装
- 目录1
- dir2
- 共享的
- src
- dom
- utils.ts
- index.ts
- dom
- src
这很好用。
import { baz } from '@foobar/shared'; // mapped to `packages/shared/src/index.ts`
我预计这会起作用,但不会
import { baz } from '@foobar/shared/dom/utils';
但这会起作用,这很奇怪,因为我已经在paths
中包含了src
。
import { hasClosestElement } from '@muku-ui/shared/src/dom/utils';
这是bug还是我遗漏了什么?
这个'@foobar/shared/dom/utils'
永远不会工作,因为您正在目录shared
下显式查找名为dom
的目录。根据您提供的项目布局,shared
下没有这样的目录,它存在于src
目录下:@foobar/shared/src/dom/utils
。