Typescript 在angular2中轻松导入自定义类
假设我有一个Angular2类型脚本解决方案,它的大小正在增长。我有很多小类/对象,按照最佳实践,我将每个类放在自己的文件中 如果我需要操纵这些对象,我通常会得到一长串导入,如下所示:Typescript 在angular2中轻松导入自定义类,typescript,angular,Typescript,Angular,假设我有一个Angular2类型脚本解决方案,它的大小正在增长。我有很多小类/对象,按照最佳实践,我将每个类放在自己的文件中 如果我需要操纵这些对象,我通常会得到一长串导入,如下所示: import {Object1} from '../core-data/object1'; import {Object2} from '../core-data/object2'; import {Object3} from '../core-data/object3'; import {Object4} fr
import {Object1} from '../core-data/object1';
import {Object2} from '../core-data/object2';
import {Object3} from '../core-data/object3';
import {Object4} from '../core-data/object4';
import {Object5} from '../core-data/object5';
import { Object1, Object2, Object3, Object4, Object5 } from '../core-data/';
我希望我能做些像这样的事情:
import {Object1, Object2, Object3, Object4, Object5} from '../core-data/CORE_OBJECTS';
我尝试使用Angular团队用于CORE_指令的模式,但它似乎只起作用,因为这些是通过组件注释上的DIRECTIVES属性添加的
我真的不想捆绑它/为它做一个新项目,因为这会使整个过程变得更困难——我只想调整一些核心对象,而不需要太多麻烦
处理此问题的最佳方法是什么?您可以利用Angular2的导出功能
例如,在core.objects.ts文件中:
然后,您可以通过这种方式利用core.objects模块
import {
Object1, Object2, Object3, Object4, Object5
} from '../core-data/core.objects';
您可以利用Angular2的导出功能
例如,在core.objects.ts文件中:
然后,您可以通过这种方式利用core.objects模块
import {
Object1, Object2, Object3, Object4, Object5
} from '../core-data/core.objects';
我不想劫持你的答案,只是提供了一些我发现的额外信息: 如果在/core data文件夹中创建index.ts并将其内容设置为:
export * from './core-terms';
然后您可以得到一个稍微简单的import语句,如下所示:
import {Object1} from '../core-data/object1';
import {Object2} from '../core-data/object2';
import {Object3} from '../core-data/object3';
import {Object4} from '../core-data/object4';
import {Object5} from '../core-data/object5';
import { Object1, Object2, Object3, Object4, Object5 } from '../core-data/';
无需同时指定包含关联导出的文件夹和文件:
编辑:这仍然需要core-terms.ts文件包含导出。您可以将导出替换为core-terms.ts文件中的导出,这样就不需要额外的文件。您也可以离开它,然后随着核心数据文件夹的增长,创建更多的子分区文件,并在index.ts中合并所有子文件。这样index.ts保存所有类,您可以将这些类细分为core-terms.ts core-components.ts core-whatever.ts.。不试图劫持您的答案,只提供我发现的一些额外信息: 如果在/core data文件夹中创建index.ts并将其内容设置为:
export * from './core-terms';
然后您可以得到一个稍微简单的import语句,如下所示:
import {Object1} from '../core-data/object1';
import {Object2} from '../core-data/object2';
import {Object3} from '../core-data/object3';
import {Object4} from '../core-data/object4';
import {Object5} from '../core-data/object5';
import { Object1, Object2, Object3, Object4, Object5 } from '../core-data/';
无需同时指定包含关联导出的文件夹和文件:
编辑:这仍然需要core-terms.ts文件包含导出。您可以将导出替换为core-terms.ts文件中的导出,这样就不需要额外的文件。您也可以离开它,然后随着核心数据文件夹的增长,创建更多的子分区文件,并在index.ts中合并所有子文件。这样index.ts保存所有类,您可以将这些类细分为core-terms.ts core-components.ts core-whatever.ts…。这就是我想要做的,也是我尝试过的,但似乎不起作用。也许我把某个地方搞砸了,我会再试一次。谢谢Angular2框架本身使用这种方法;-所以它应该是有效的。。。不客气!我不知道为什么第一次它不起作用。这是如此简单,它的工作非常像它应该。谢谢:这是我想做的,我也试过了,但似乎不起作用。也许我把某个地方搞砸了,我会再试一次。谢谢Angular2框架本身使用这种方法;-所以它应该是有效的。。。不客气!我不知道为什么第一次它不起作用。这是如此简单,它的工作非常像它应该。谢谢: