在RC4及更高版本中不推荐使用Angular2的provide()函数,应该使用什么?

kdu*_*kdu 24 provider deprecated angular

我刚从Angular2 RC1升级到RC4.

在我用之前:

provide(LocationStrategy, {useClass: HashLocationStrategy})
Run Code Online (Sandbox Code Playgroud)

但是,在升级到RC4之后,提供显示为已弃用.

我没有找到任何关于此的文件.

有没有人知道发生了什么?

Mic*_*ryl 25

正如上面的注释中所指出的,您现在应该只使用带有provideuseClass属性的对象,如下所示:

bootstrap(App, [
    CookieService,
    AuthService,
    WindowService,
    COMMON_DIRECTIVES,
    ROUTER_DIRECTIVES,
    HTTP_PROVIDERS,
    provideRouter(AppRoutes),
    { provide: LocationStrategy, useClass: HashLocationStrategy }
]);
Run Code Online (Sandbox Code Playgroud)

这个例子来自我使用Angular2,Bootstrap 4,OAuth2和Webpack的 Github 项目.我一直在更新它,因为Angular2的各种alpha,beta和RC版本已被推出.

  • 如何在测试服中注入模拟服务? (3认同)