我有以下配置:
{
"compilerOptions": {
"target": "es5",
"module": "commonjs",
"moduleResolution": "node",
"baseUrl": ".",
"paths": {
"@/*": [
"./src/*"
]
},
"declaration": true,
"outDir": "dist"
}
}
export class A {
constructor (public a: string) {
}
}
import { A } from "@/A";
export class B {
constructor (public a: A) {
}
}
现在只需运行tsc
,您将得到以下结果:
import { A } from "@/A";
export declare class B {
a: A;
constructor(a: A);
}
导入仍为"@/A"
,当其他模块想要使用new B()
时,由于无法解析A,最终会出现问题。在这种情况下,"./A"
是正确的!
是否可以解决此问题?