【问题标题】:Google Inbox-style navigation with vue-router带有 vue-router 的谷歌收件箱式导航
【发布时间】:2019-05-07 11:03:15
【问题描述】:

我正在使用vue-router 构建一个应用程序,并尝试实现类似于(现已失效的)Google Inbox 的 UI。或者Techcrunch 主页,这可能是我需要的更好的再现。

  • 有一个项目列表
  • 当您单击其中一项时,它会“原地展开”以显示更多详细信息。
  • URL 也会更新以反映展开的项目
  • 单击“返回”时,项目会折叠回列表中
  • 直接访问 URL 时,页面应显示展开项,并且(可选)可以在下方显示更多列表项。

问题是,我不知道如何构建它 - 我试图从子路径的想法开始,但我不知道将孩子放在哪里 <router-view> 因为它的位置总是根据刚刚单击的项目进行动态扩展。

我有预感它与 named views 有关,但我无法理解它。

欢迎任何想法!

【问题讨论】:

  • 要更新 URL,开始的地方应该是 window.history.pushState... 不过我不确定你如何直接导航到这些页面 - 你仍然需要一些以动态路由的形式显示这些。

标签: javascript vue.js vuejs2 vue-router


【解决方案1】:

不久前 Vue github 页面上出现了一个类似的主题,但涉及打开模态而不是打开折叠容器。该线程的一位贡献者写了一个很好的blog post,它可能会为您指明解决方案。

一旦您像上面对模态框所做的那样对动态路由进行排序,将文章的简介和动画展开应该相当简单。 Vue docs 食谱有一个 good article 用于构建一个应该派上用场的动态博客。

【讨论】:

  • 谢谢你,看起来很有趣,我会详细检查一下。与此同时,我已经设法实现了一些似乎可以解决我的问题的事情,我将把它发布在这里作为可能的解决方案。
猜你喜欢
  • 1970-01-01
  • 2020-01-22
  • 2020-06-06
  • 1970-01-01
  • 2019-09-22
  • 2014-05-22
  • 2018-09-12
  • 2017-12-28
  • 2015-01-15
相关资源
最近更新 更多