【问题标题】:Angular2 and Typescript DefinitionsAngular2 和 Typescript 定义
【发布时间】:2015-10-13 13:12:11
【问题描述】:

我正在使用随 tsd 一起安装的 typescript 定义来处理 Angular2 的预览版。最近他们发布了 2.0.0-alpha.40,现在我的路由不再起作用了。我查看了 angular 网站上的示例,它们引用了 angular2/router 中的例如 routerBindings,但当前的 angular2/router 没有定义此函数。我确实使用 tsd 运行了更新和重新安装,但没有任何变化。我如何知道发布的 angular2 typescript 定义是否与 javascript 版本发布是最新的?

【问题讨论】:

标签: typescript angular angular-routing tsd


【解决方案1】:

只需通过 npm install 获取输入

把它放在你的 package.json 中:

"angular2": "^2.0.0-alpha.42"

除此之外 - 他们已将 routerBindings 重命名为 ROUTER_PROVIDERS。

这是 Angular 2.0 中路由的更新文章:http://www.syntaxsuccess.com/viewarticle/routing-in-angular-2.0

您可以在此处查看工作示例:http://www.syntaxsuccess.com/viewarticle/angular-2.0-examples

【讨论】:

  • 您链接的样本使用HashLocationStrategy,它仅用于匹配片段(例如/url/path#fragment)。
【解决方案2】:

这已在 angular@2.0.0-alpha.41

中进行了更改

routerInjectables 更名为ROUTER_BINDINGS

ROUTER_BINDINGS 随后重命名为 ROUTER_PROVIDERS

使用ROUTER_PROVIDERS

包括:

  • RouteRegistry - 已定义路由的注册表
  • LocationStrategy = PathLocationStragety - 按路径匹配路由

这基本上是使用默认设置引导路由器的快捷方式。

例如:

@Component ({
...
})
@View ({
...
})
@RouteConfig ({
...
})
class App {}

bootstrap(App, [ ROUTER_PROVIDERS ]);

来源:

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-12-29
    • 1970-01-01
    • 2017-04-29
    • 2016-09-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-11
    相关资源
    最近更新 更多