我们遇到了一个问题,WebStorm 抱怨某些命名路径。不过,使用 webpack 一切都构建得很好。
这是我们的文件结构:
apps
app1
tsconfig.e2e.json
src
tests
testsuite1
file.po.ts
libs
lib1
src
index.ts
libs
我们的 lib 索引.ts:
export * from './lib';
tsconfig.e2e.json 中的路径:
{
"compilerOptions": {
...
"paths": {
"@a/lib1": ["../../libs/lib1/src"],
}
}
}
我们的导入在 file.po.ts 中的 WebStorm 中被标记为未找到
import { Mo } from '@a/lib1';
我们已经在 WebStorm 中启用了 TypeScript 语言服务,并且其他一些类似的导入正在运行。我们对 TypeScript 和 WebStorm 很陌生,所以也许我们遗漏了一些东西。
我也有同样的问题;在向 tsconfig.json 文件添加新路径后,我需要重新启动 Intellij IDEA 才能识别 import 语句中的路径。
"paths": {
"@alias/*": ["folder/*"],
},
重新启动后,它停止用红线在路径下划线:
import { SomeFeatureModule } from '@alias/some-feature/some-feature.module';
如果这不能解决问题,请按住 Control 单击实际别名以查看是否可以识别;单击应该会将您带到声明路径别名的
tsconfig.json
文件。还要检查实际路径是否正确,考虑到 compilerOptions
配置的 baseUrl
属性。路径应该相对于这个base-url。
举个例子:
"baseUrl": "src",
这意味着对于上面的示例,现有文件夹实际上应该是:
src/folder/*
我的
*.spec.ts
文件中的 Angular + NX 项目也遇到了类似的问题。 here指出的解决方案对我有用:
我必须补充:
"references": [
{
"path": "./tsconfig.lib.json"
},
{
"path": "./tsconfig.spec.json"
}
],
在每个 NX 库的
tsconfig.json
文件中。