假设我有一个名为“util.ts”的本地文件。启用绝对导入后,我可以在我的应用程序中的任何地方调用。
import * as util from 'util'
现在假设在 node_modules
中有一个名为 util
的包。那将被导入。无论如何要指定我明确想要我的模块而不是 Node 模块中的模块?
最佳答案
引用:https://github.com/facebook/create-react-app/issues/7795
尝试
{
"compilerOptions": {
...
"baseUrl": "."
}
}
并在导入前加上“src/”前缀,如“src/util”。
我遇到了一些确切的问题,想要使用我的 src 目录中名为“util.ts”的文件。然而,事实证明,在名称冲突的情况下, Node 模块总是获胜。上面的 github 问题链接引用了一种可能的解决方案,将您的 tsconfig baseUrl 更改为“.”。对于你的绝对导入,在它们前面加上'src',所以'src/util'。
我怀疑您可以使用 tsconfig 'paths' 来为事物添加别名,或者避免在其他情况下必须键入 src,但我没有探索过这条路线,因为我实际上可以在我的绝对导入前加上 'src' 前缀。
关于javascript - 解决绝对导入冲突,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64016057/