Former-commit-id: 095fead86fe17c1e1b86e1d8dc71d218cccef94b [formerly 095fead86fe17c1e1b86e1d8dc71d218cccef94b [formerly 095fead86fe17c1e1b86e1d8dc71d218cccef94b [formerly 095fead86fe17c1e1b86e1d8dc71d218cccef94b [formerly 47155266b5e6df546cc0ff2ec23c75a868110b44 [formerly 372c8774e7608241ada547f8b5c339d32fb0d84d]]]]] Former-commit-id: a4e1485bbfd09d977fe96b6d4deee5da47c8f646 Former-commit-id: 3c0d7bba2e47395f26e79c62a37a089d1ae7e02e Former-commit-id: 9d26f7e00c6591a7f706a8e32d5408766c849e2c [formerly 6ae51e6e61236bde52989edc7087fd41320f8d3c] Former-commit-id: c4ac8a001411141aebf5c4ed4367e9a6f6ec6fa1 Former-commit-id: 1c00ce3481429ec03053a4eaf91e032a9ddef151 Former-commit-id: 8501e6c290f23abac138ff71d9712e296357b843 Former-commit-id: e6850af21f70ba5c9aba74252dd7e8977d243689 Former-commit-id: a3e3131d881d0ad444b0a0b82ee7495066e914ca
sidebar
| sidebar |
|---|
| auto |
多页面
D2Admin 默认支持多页面,并且支持多页面控制器上的 tab 标签页右键菜单控制,可以实现“关闭全部”,“关闭其它”,“关闭左侧”,“关闭右侧”的功能。
注册页面
D2Admin 的多页面设置源头在 d2-admin/src/router/routes.js,该文件导出了一个 frameInRoutes 变量,d2-admin/src/main.js 中使用下面的方式导入:
import { frameInRoutes } from '@/router/routes'
然后在根实例中加入了一个名为 getAllPageFromRoutes 的方法,该方法在 created 生命周期调用,递归处理 frameInRoutes 中的数据将支持多标签页显示所有页面数据扁平为一位数组,然后使用:
$store.commit('d2admin/page/poolSet', pool)
将得到的路由数据存储到 vuex 中备用。这份数据在操作多页面数据时会使用到。
触发
新建页面的触发在 d2-admin/src/router/index.js 中的 router.afterEach 钩子中。涉及的方法参见 API
标签页控制
标签页组件在 d2-admin/src/layout/header-aside/components/tabs/index.vue,该组件实现多页面的各种关闭控制。涉及的方法参见 API