Angular 2 - 共享文件中的所有导入

时间:2016-12-13 09:02:45

标签: angular

我正在处理一些模块和angular2组件,每次创建一个新组件时,我都要注意我的导入。

我正在尝试找到一种能够通过单个文件导入所有threm的方法。你知道这是否可行?

所以,我会有imports.ts,我会:

import { Component, OnInit, ViewChild } from '@angular/core';
import { List } from './list';
import { ListsService } from '../shared/lists.service';
import { LoadingComponent } from '../loading/loading.component';
import { Router, ActivatedRoute, Params } from '@angular/router';

我只需要导入'进口'。

实际上它不起作用...... 有人有想法吗?

2 个答案:

答案 0 :(得分:3)

你要找的是桶。您可以在Angular 2 Glossary

中找到有关它的更多信息

你的枪管(index.ts)看起来像这样:

export { Component, OnInit, ViewChild } from '@angular/core';
export { List } from './list'

export * from './list';
export * from '../shared/lists.service';

然后从桶文件夹(如果它存在于shared文件夹中,您应该通过path-to/shared)或桶文件(path-to/shared/index)导入。

所以你的导入看起来像这样:

 import { List, ListsService } from 'path-to/shared';

此外,如术语表中所述,这也可以使用角度模块完成。当他们把桶带到风格指南时,还没有任何模块。

答案 1 :(得分:0)

创建index.ts并粘贴到下一个代码

import { List } from './list';
import { ListsService } from '../shared/lists.service';
import { LoadingComponent } from '../loading/loading.component';
import { Router, ActivatedRoute, Params } from '@angular/router';

之后,您可以在任何组件或模块中使用此桶文件,如

import {
    List
    ListsService,
    LoadingComponent,
    Router,
    ActivatedRoute,
    Params
} from '../index.ts';