我正在尝试在 angular2 中导入 moment.js 库。 我找到了以下解决方案:
import {Component} from 'angular2/core';
import * as moment from 'moment';
@Component({
selector: 'app',
template: require('./app.component.html')
})
export class AppComponent {
moment:any = moment;
constructor() {}
}
但是,我不想将它导入到我拥有的每个组件中。有没有一种方法可以全局注入(inject)它,以便我可以在我的所有组件中使用它?
最佳答案
从我读到的here ,我可以在像这样引导整个应用程序时提供 momentjs 库:
import * as moment from 'moment';
import {provide} from 'angular2/core';
import {bootstrap} from 'angular2/platform/browser';
bootstrap(App, [
provide("moment", {useValue:moment})
])
然后我可以使用 DI 在我自己的组件中使用它,就像这样:
import {Component, OnInit, Inject} from 'angular2/core';
@Component({
selector: 'app',
template: require('./app.component.html')
})
export class AppComponent {
constructor(@Inject("moment") private moment) {}
}
关于javascript - 如何全局导入angular2中的Javascript库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36852471/