页面布局(layout)

header 头部

index 首页

logo 标志

nav 、 sub_nav 导航 子导航

banner 横幅广告

main 、content 主题 、内容

container / con 容器

wrapper / wrap 包裹

menu 菜单

sub_menu / cecond_menu 子菜单 二级菜单

list 列表

section 分区 分块 类似于 div

article 文章

aside 侧边栏 广告

footer 页脚 底部

title / sub_title 标题 副标题

news 新闻

hot 热点

pro 产品 product

company 公司

msg / info 信息 消息

ads 广告 advertisement

icon 小图标

copyright 版权

contact_us 练习我们

friend_link  友情链接

tel 练习电话

address 地址

Vue Router 可以通过结合组件化的前端架构和动态路由加载来实现页面布局Layout 或称为 Layout 组件模式)。这种模式通常用于统一管理页面的顶部导航、侧边栏和主要内容区域。以下是如何实现这个模式的一般步骤: 1. **创建 Layout 组件**: - 创建一个名为 `AppLayout.vue` 或类似的父组件,这个组件将会包裹所有的内容区域。 - 在 `AppLayout.vue` 中,定义通用的 HTML 结构,包括 header、sidebar 和 main 区域。 ```html <template> <div id="app"> <header>...</header> <aside>...</aside> <main> <router-view></router-view> <!-- 这里是动态渲染路由的内容 --> </main> </div> </template> ``` 2. **配置路由守卫**: - 针对 `Layout` 组件,可能需要在全局或部分路由前定义一个守卫,比如 `beforeEach`,来控制哪些路由能够进入 layout。 - 在守卫中,你可以判断当前路由是否符合显示布局的要求,例如只对特定的菜单权限打开侧边栏等。 3. **动态路由**: - 在 Vue Router 的 `routes` 数组中,定义每个具体页面的路由,这些路由应该包含它们自己的组件(通常是 `components` 属性指向的组件),而不是直接放在 `children` 里面。 4. **应用路由**: - 在主入口文件(通常是 `main.js` 或 `src/App.vue`)中,配置 Vue Router,设置 `default` 值为 `AppLayout` 组件,同时配置路由映射。 5. **路由切换**: - 当用户导航到不同路由时,`<router-view>` 将根据路由配置动态地替换 `main` 区域中的内容。 例子: ```js // router.js import { createRouter, createWebHistory } from 'vue-router'; import AppLayout from '@/components/AppLayout.vue'; const routes = [ { path: '/', component: HomeView }, { path: '/about', component: AboutView, meta: { layout: true } }, { path: '/contact', component: ContactView, meta: { layout: false } }, // 不显示 layout ]; export default createRouter({ history: createWebHistory(), routes, }); // 注意:`meta.layout` 属性用于标记需要使用 Layout 组件的路由 // 主入口文件(main.js) import router from './router'; new Vue({ el: '#app', router, components: { AppLayout, // 其他自定义组件 }, }); ``` 现在,只有 `/about` 路由会显示完整的布局,而 `/contact` 则不会显示侧边栏和顶部导航。通过这种方式,你可以灵活地管理页面的整体布局
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Coder_Xy

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值