vue-router不会在嵌套路由上呈现模板

时间:2017-04-20 04:18:48

标签: javascript vue.js vuejs2 vue-component vue-router

所以我有这样的路线:

<template>
    <div id="home">
         <router-view></router-view>
    </div>
</template>

在Home组件中我有这样的东西:

/health/overview

但是当我导航到/health/blood$route路由时,与组件对应的模板将不会呈现。我检查了应用程序<router-view>对象,它们正确检测了路由和组件。只是模板不会呈现。如果有帮助,我的App.vue中也有一个 <Columns> <asp:TemplateField> <ItemTemplate> <asp:CheckBox ID="chkchild" runat="server" AutoPostBack= "true" CommandArgument= '<%# Eval("id") %>'/> </ItemTemplate> </asp:TemplateField> </asp:Columns>

是否有可能拥有多个嵌套路线?或者我错过了什么?

1 个答案:

答案 0 :(得分:4)

健康路径应该是这样的:

{
  path: 'health',     // not '/health'
  component: Health,  // this can just be a dummy component with a <router-view/>
  children: [...],
},

如果您因任何原因完全不需要Health组件(即每个孩子都没有任何共享功能或模板),您可以完全删除健康路径并将其替换为相反:

{
  path: 'health/overview',
  component: Overview,
},
{
  path: 'health/blood',
  component: Blood,
},