Angular2在main.ts或组件本身内添加提供程序依赖项

时间:2016-05-11 06:40:35

标签: angular

我在angular2中有一个非常简单的应用程序,有三个文件:

main.ts
app -|
      app.component.ts
      app.service.ts

在我的主题中,我尝试过这两件事:

import { bootstrap } from "angular2/platform/browser"
import "rxjs/add/operator/map"

import { AppComponent} from "./app/app.component"

bootstrap(AppComponent)

import { bootstrap } from "angular2/platform/browser"
import { HTTP_PROVIDERS } from "angular2/http"
import "rxjs/add/operator/map"

import { AppComponent} from "./app/app.component"

bootstrap(AppComponent, [HTTP_PROVIDERS])

在第一种情况下,由于我没有注入HTTP_PROVIDERS,我需要在我的app.component.ts中执行:

/*Imports*/
@Component({
    selector: "my-app",
    templateUrl: "app/app.template.html",
    providers: [
        HTTP_PROVIDERS,
        AppService
    ]
})
/*Export*/

在Component或boostrap中注入(此处为HTTP_PROVIDERS)是否相同?

如果是这样,最佳做法是什么?

1 个答案:

答案 0 :(得分:3)

它是一样的。根据样式指南,更喜欢将提供程序添加到根组件的providers: [...]而不是bootstrap()

另见