【发布时间】:2021-03-20 06:03:04
【问题描述】:
Nuxt 添加了一个布局属性,您可以为每个页面设置该属性。如果缺少,Nuxt 使用默认布局。您可以有一个单独的移动布局,并通过将其包含在 vue 组件的脚本部分中来指定特定页面使用移动布局:
export default {
layout: 'blog',
// OR
layout(context) {
return 'blog'
}
}
来源:https://nuxtjs.org/docs/2.x/components-glossary/pages-layout/
最终我们的应用程序可能有数百个页面/路由,而不是为每个页面/路由添加一个布局方法来检查它是否是移动用户代理。有没有办法将其添加到项目中的所有页面组件中(无需同时添加到所有 Vue 组件中)?
【问题讨论】:
-
您可以修改您的布局 (blog.vue),以便能够针对移动/桌面进行更改,而不是将这个逻辑添加到数百个 .vue 文件中。
-
我已经考虑过了,但我想要一个完全不同的移动布局。
-
没关系,你可以制作两个不同的组件:blog-mobile.vue 和 blog-desktop.vue,然后在 blog.vue 布局上做 v-if
标签: vue.js mobile layout nuxt.js