【问题标题】:VUEX ROUTER nested children not rendering?VueX ROUTER嵌套子不渲染?
【发布时间】:2019-07-27 13:26:36
【问题描述】:

我正在尝试从路由器获取子链接以进行渲染,以便父路由保持活动状态。

这是我的路由器:

{
  path: '/portfolio',
  name: 'portfolio',
  component: () => import('./views/Portfolio.vue'),
  children: [
    {
      name: 'portfolioitems',
      path: '/portf/:id',
      component: () => import('./views/portf.vue')
    }
  ],
}

还有我获取页面的项目链接:

<router-link :to="`/portfolio/portf/${items.id}`"> item </router-link>

例如,网址确实转到了/portfolio/portf/10,但页面上没有呈现任何内容。

感谢您的帮助!

【问题讨论】:

  • 你能分享你的Portfolio.vue组件的代码吗?
  • 谢谢,丢失了

标签: vue.js vuex vue-router


【解决方案1】:

path: '/portf/:id', 替换为path: 'portf/:id', 并让我们知道它是否有效。我之前遇到过同样的问题,我给你的解决方案对我有用。它也可能对你有用。

【讨论】:

  • 似乎没有解决我的问题。它重定向到相同的路径 URL,但停留在 portf.vue 上,而不是转到 portf.vue。
  • 它应该留在portfolio.vue上。子组件在&lt;router-view&gt; 内呈现。所以在你的portfolio.vue 中,你需要另一个&lt;router-view&gt;&lt;/router-view&gt;,这就是你的子组件将被渲染的地方。如果 oyu 使用子路由,您将始终渲染父组件,并且在该组件内,vue 会查找 &lt;router-view&gt; 来渲染子路由。
  • 谢谢@MatthiasS & p01ymath .. 这就是我所缺少的!现在我明白它是如何工作的了!
猜你喜欢
  • 2017-06-07
  • 2017-11-15
  • 2022-01-13
  • 1970-01-01
  • 1970-01-01
  • 2018-06-06
  • 1970-01-01
相关资源
最近更新 更多