Vuetify有一个非常灵活的布局方案,包括菜单、工具栏、内容和页脚,允许一些漂亮的 material design schemes ,例如。 Google Contacts :
考虑一个由路由器控制布局的标准设置,整个站点有一个固定的菜单,但有一个随显示的页面而变化的动态工具栏。根据显示的页面更改工具栏内容的最佳做法是什么?在Google联系人示例中,我们只希望搜索栏显示在 Contacts 页
Contacts
根据我对Vue的基本知识,定义路由器布局似乎需要 scoped slot . 可能还有很多其他的黑客方法来实现这一点。但我正在寻找一种干净、模块化的方法来跨页面定义工具栏内容。
思想:
不久前的vue路由器 didn't support named slots . 但这似乎 changed recently ,尽管没有文档。
Named views 这似乎是一种很好的方法,可以支持使用vue路由器将工具栏内容绑定到主页。但是,工具栏似乎没有一种与主页“对话”的好方法,就像插槽一样。
您可以在应用程序中定义多个路由器视图。想象一下,您的布局看起来非常简单,如下所示:
<v-app id="app"> <router-view name="navigation"></router-view> <router-view></router-view> </v-app>
然后,可以使用两个路由器视图的组件定义路由:
{ path: '/hello', components: { default: MyHelloComponent, navigation: MyNavigationForHelloComponent } }
Documentation
Working Example from Documentation