将一个目录中的所有文件分组在一个别名下
Grouping all files from one directory under one alias
假设我有这个目录结构:
src
├──Utils
| ├──File2.ts
| ├──File3.ts
index.ts
tsconfig.json
我知道您可以像这样在 tsconfig.json 中设置路径别名:
{
"compilerOptions": {
.....
"paths": {
"Utils/*": ["src/Utils/*"],
}
}
}
然后我可以在 index.ts:
中使用这些别名
import { File2 } from 'Utils/File2';
import { File3 } from 'Utils/File3';
我相信你注意到了冗余:即便如此,如果 File2
和 File3
在同一个文件夹中,我们必须为 [=18] 中的每个文件编写 import
=]文件夹。
是否可以将这些文件分组在一个导入下并像下面的示例一样使用它?
import { File2, File3 } from 'Utils';
我试过这个配置,但它不起作用:
{
"compilerOptions": {
"paths": {
"Utils": ["src/Utils/*"],
}
}
}
编辑
此外,我不想使用像 index.ts
这样的桶文件,我从 Utils
文件夹中导出所有内容。
这可以通过使用桶文件来解决。在 /Utils
中创建一个 index.ts
文件并添加
export * from './File2';
export * from './File2';
在你的tsconfig
{
"compilerOptions": {
"paths": {
"Utils": ["src/Utils"]
}
}
}
不使用桶文件就无法对这些导入进行分组。但是,如果您不想像 barrelsby 那样手动维护它们的麻烦,那么有些库可以为您生成这些文件。或者,您可以编写自己的脚本以使它们保持最新。
假设我有这个目录结构:
src
├──Utils
| ├──File2.ts
| ├──File3.ts
index.ts
tsconfig.json
我知道您可以像这样在 tsconfig.json 中设置路径别名:
{
"compilerOptions": {
.....
"paths": {
"Utils/*": ["src/Utils/*"],
}
}
}
然后我可以在 index.ts:
中使用这些别名import { File2 } from 'Utils/File2';
import { File3 } from 'Utils/File3';
我相信你注意到了冗余:即便如此,如果 File2
和 File3
在同一个文件夹中,我们必须为 [=18] 中的每个文件编写 import
=]文件夹。
是否可以将这些文件分组在一个导入下并像下面的示例一样使用它?
import { File2, File3 } from 'Utils';
我试过这个配置,但它不起作用:
{
"compilerOptions": {
"paths": {
"Utils": ["src/Utils/*"],
}
}
}
编辑
此外,我不想使用像 index.ts
这样的桶文件,我从 Utils
文件夹中导出所有内容。
这可以通过使用桶文件来解决。在 /Utils
中创建一个 index.ts
文件并添加
export * from './File2';
export * from './File2';
在你的tsconfig
{
"compilerOptions": {
"paths": {
"Utils": ["src/Utils"]
}
}
}
不使用桶文件就无法对这些导入进行分组。但是,如果您不想像 barrelsby 那样手动维护它们的麻烦,那么有些库可以为您生成这些文件。或者,您可以编写自己的脚本以使它们保持最新。