路径别名和索引文件



我将Next.js与TypeScript一起使用,并在我的项目中配置路径别名,一切都很顺利。但我对文件夹中的index.ts文件有点麻烦,我想做这样的事情:

// interfaces/index.ts
export type { IProfile }
// page/index.tsx
import { IProfile } from '@/interfaces';

这段代码给我带来了以下错误:

找不到模块'@interfaces;'或其相应的类型声明。

显然,解决方案是使用@/interfaces/index导入,但我希望避免这种情况。有什么解决办法吗?

我知道这是一个老问题,但这里有一个答案。

如果您使用索引文件导出函数,并且不希望每次从interfaces目录中导入内容时都键入@/interfaces/index,那么您最好只键入@/interfaces

在tsconfig文件中,尝试以下操作:

"paths": {
"@/interfaces": ["src/interfaces/index"], // or wherever your folder lives
}

然后你可以简单地导入所需的函数,如下所示:

import { IProfile } from '@/interfaces';

这是因为您的路径别名直接查看接口文件夹中的索引文件。

希望这有帮助:(

干杯,编码快乐!

最新更新