主应用程序组件无法获取参数

时间:2016-07-29 07:38:35

标签: javascript angular angular2-routing

我有一个场景,其中url中的第一个段将是唯一标识符。该唯一标识符也将用于主路由和子路由中。

以下是我如何定义我的路线配置

export const routes:RouterConfig = [{
    path: ':academy_url',
    children: [
        {path: '', component: CoursesComponent},
        {path: 'courses',
            children: [
                {path: '', component: CoursesComponent}
            ]
        }
    }
];

:academy_url是我计划在子组件中使用的参数。我可以在子组件中访问此参数(例如CoursesComponent),但由于某种原因我无法在主app组件中访问它。

当我尝试observables以及snapshot时,params数组在主要组件中是空的。我如何在app组件中访问此param?现在我有一个解决方法,它取决于从子组件发出param值的服务,但这非常不方便,因为每次组件加载或页面刷新时都会发生这种情况。

我需要一个更直接的方法,我觉得它可能是一个错误,或者主应用程序组件可能无法访问入门级参数?

此外,我尝试创建一个plunker,但我不确定我是如何让它在那里工作的,因为它为它的plunker url键提供了未定义的路由错误。

0 个答案:

没有答案