导入新库 - Angular 5

时间:2018-04-16 13:10:40

标签: angular import

我想知道如何在导入之前获取库的详细信息。 我更好地解释一下:

例如:

要导入项目中的所有库,我使用app.module.ts

这是一个示例

1) import

import { Routes, RouterModule } from '@angular/router';

2)导入

imports: [routes, { useHash: true })]

我的问题如下:

我想知道在哪里可以获得导入它们所需的信息。在这种情况下,我不需要使用导入,因为它不是一个组件,但我想知道如何调用它将其导入我的NgModulelink

我该怎么用?我应该选择哪个名字?我在哪里拿它?

1 个答案:

答案 0 :(得分:1)

您提到的第一个导入是 Typescript 导入。如果你跳过这个导入,那么在你的模块定义中,Typescript会抱怨它不知道RouteModule。例如:

import { RouterModule } from '@angular/router';

第二次导入用于导入其他 Angular模块。例如:

@NgModule({
  imports: [
    RouterModule
  ],
  ...
})
export class AppModule { }

因此,如果你想使用不是Angular模块但是普通javascript库的xml-formatter,你不必在app.module.ts中导入它。

相反,将它包装在服务中是一种很好的做法,在这种服务中,您只需导入库本身:

import xmlFormatter from 'xml-formatter';

class XmlFormatterService {
  format(input) {
    return xmlFormatter();
  }
}

稍后在组件中使用该服务:

class AppComponent {
  constructor(xmlFormatterService: XmlFormatterService) {
    console.log(xmlFormatterService.format('<root></root>'));
  }
}

为了更好地理解Angular Modules结帐文档:https://angular.io/guide/ngmodules