【问题标题】:How to use RouteConfig in Angular2 with plain JavaScript?如何在带有纯 JavaScript 的 Angular2 中使用 RouteConfig?
【发布时间】:2016-02-15 11:36:52
【问题描述】:

我正在使用带有纯 JavaScript 的 Angular 2 构建应用程序,但我找不到任何关于如何将 RouteConfig 用于 JavaScript(不是 ts)的示例。

谁能给我一个如何使用的例子。 我试过这样但它不起作用:

(function(app) {
    app.MainComponent =
        ng.core.Component({
                selector: 'app',
                templateUrl: 'app/components/main/main.view.html'
            })
            .Class({
                constructor: function() {}
            })
            .RouteConfig([
                {path: '/', redirectTo: '/job'},
                {path: '/job', component: JobViewComponent }
            ])
    ;

})(window.app || (window.app = {}));

我还有其他文件是 JobView

(function(app) {
    app.JobViewComponent =
        ng.core.Component({
                selector: 'job-view',
                templateUrl: 'app/components/job_view/job_view.view.html'
            })
            .Class({
                constructor: function() {}
            });
})(window.app || (window.app = {}));

谢谢。

【问题讨论】:

    标签: javascript angular angular2-routing


    【解决方案1】:

    RouteConfig 是一个装饰器,所以你应该这样使用它:

    app.MainComponent =
      ng.core.Component({
        selector: 'app',
        templateUrl: 'app/components/main/main.view.html'
      })
      .Class({
        constructor: function() {}
      });
    
    app.MainComponent = ng.core.RouteConfig([
      {path: '/', redirectTo: '/job'},
      {path: '/job', component: JobViewComponent }
    ])(app.MainComponent);
    

    这是一个有效的 plunkr:https://plnkr.co/edit/ZcSGHSsV8fBOc4TnI68h?p=preview

    【讨论】:

    • 我尝试了 plnkr 版本,它工作正常,但是当我想添加具有特定路径的第二个控制器时,我收到此错误: 例外:评估“点击”期间出错 这是修改后的 plnkr :plnkr.co/edit/FY1O5RiBRMhrA4tmryoS?p=preview
    • 这很奇怪,因为我没有 angular2-all.umd.dev.js 文件的行为:-( 似乎是缩小文件中的错误...
    • 谢谢。我暂时不会使用 .min 版本。希望在下一个版本中修复。
    • 更新到 rc1 并使用新路由器后,我收到此错误:ng.router.RouteConfig is not a function。从 ts doc 看起来应该是一样的。你知道为什么我现在收到这个错误吗?谢谢。
    猜你喜欢
    • 1970-01-01
    • 2016-05-19
    • 2020-10-18
    • 2019-12-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-06-19
    • 1970-01-01
    相关资源
    最近更新 更多