当前位置:  开发笔记 > 编程语言 > 正文

ES5中的Angular 2路由?

如何解决《ES5中的Angular2路由?》经验,为你挑选了1个好方法。

该角2 ES5小抄说,要做到这一点:

var MyComponent = ng.router.RouteConfig([
  { path: '/:myParam', component: MyComponent, as: 'MyCmp' },
  { path: '/staticPath', component: ..., as: ...},
  { path: '/*wildCardParam', component: ..., as: ...}
]).Class({
  constructor: function() {}
});

但是,我无法弄清楚如何指定@Component该类的东西,以便我可以实际实例化它.例如,

ng.router.RouteConfig([...]).Component({})

抛出异常,因为结果.RouteConfig没有.Component方法.同样,结果.Component没有.RouteConfig方法.你如何设置这个?



1> 小智..:

我做了以下似乎运作良好的方式.

app.AppComponent = ng.core
    .Component({
       selector: 'the-app',
       template: `
          

App!!!

Children Lists `, directives:[ app.ListsComponent, app.ChildrenComponent, ng.router.ROUTER_DIRECTIVES ] }) .Class({ constructor: [ng.router.Route, function(_router) { this._router = _router; // use for navigation, etc }] }); app.AppComponent = ng.router .RouteConfig([ { path: '/', component:app.ListsComponent, name:'Lists' }, { path: '/children', component:app.ChildrenComponent, name:'Children' } ])(app.AppComponent);

由于这两个ng.core.Componentng.router.RouteConfig的装饰,你可以这样写:

app.AppComponent = ng.core.Class(...);
app.AppComponent = ng.core.Component(...)(app.AppComponent);
app.AppComponent = ng.router.RouteConfig(...)(app.AppComponent);

希望有所帮助.

推荐阅读
勤奋的瞌睡猪_715
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有