【问题标题】:Angular2's provide() function deprecated in RC4 and later, what should be used instead?Angular2 的 provide() 函数在 RC4 及更高版本中已弃用,应该改用什么?
【发布时间】:2016-11-04 00:52:28
【问题描述】:

我刚刚从 Angular2 RC1 升级到 RC4。

在我使用之前:

provide(LocationStrategy, {useClass: HashLocationStrategy})

但是,升级到 RC4 后,该提供显示为已弃用。

我没有找到任何关于此的文档。

有人知道发生了什么吗?

【问题讨论】:

  • 您能否显示导入提供的进口在哪里?
  • 使用地图文字{ provide: LocationStrategy, useClass: HashLocationStrategy }
  • 感谢您的回复!你是怎么找到这个的?谢谢!
  • 刚刚在他们的文档中发现了这个。 angular.io/docs/ts/latest/cookbook/…

标签: angular deprecated provider


【解决方案1】:

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

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

这个例子来自我的 Github project using Angular2, Bootstrap 4, OAuth2, and Webpack。我一直在更新它,因为 Angular2 的各种 alpha、beta 和 RC 版本已经发布。

【讨论】:

  • 如何在测试服中注入模拟服务?
  • providers 下使用TestBed.configureTestingModule({ providers: [ .. ] }) 与此处相同
猜你喜欢
  • 2014-01-09
  • 1970-01-01
  • 1970-01-01
  • 2019-07-21
  • 2013-09-01
  • 1970-01-01
  • 2019-08-28
  • 2010-09-17
  • 1970-01-01
相关资源
最近更新 更多