代码之家  ›  专栏  ›  技术社区  ›  yer

angular 4中子组件之间的routerlink

  •  0
  • yer  · 技术社区  · 8 年前

    我有一个侧边栏,其中有一个下拉测验->问题在“问题”页面(问题页面有路径:/测验/问题)中,我有标题,单击该标题应链接到另一个组件“answerComponent”。

    我试着给“问题”加上孩子们的“答案”。

        {
            path: '',
            children: [
              {
                path: 'question',
                component: viewComponent,
                children: [
                  {
                    path: 'answer',
                    component: answerComponent,
                  },
                ]
              },
            ]
      }
    

    应用程序路由。单元ts

       {
        path: 'quiz',
        loadChildren: './quiz/quiz.module#QuizModule'
      },
    

    我想有一个类似于此/测验/问题/答案的路径。我在问题页面中添加了routerlink

    <a [routerLink]="['answer']" [queryParams]= "{id: '2'}">click here</a>
    

    当我单击“to”/“question”/“question”/“answer”时,我可以看到url发生了变化?id=2 但我看不到答案部分。html。

    我错过什么了吗?

    2 回复  |  直到 8 年前
        1
  •  1
  •   Modar Na    8 年前

    这个 answerComponent 位于 viewComponent 因此,您需要一个嵌套 <router-outlet></router-outlet> 视图组件

    编辑 根据评论:

    然后你的 应答器组件 应该有另一条与 视图组件 作为:

    children: [
          {
            path: 'question',
            component: viewComponent,
          },
          {
            path: 'answer',
            component: answerComponent,
          },
        ]
    
        2
  •  1
  •   Tiago Machado    8 年前

    如果要添加queryParam并需要使用它,则应尝试以下操作:

      children: [
                  {
                    path: 'answer/:id',
                    component: answerComponent,
                  },
                ]