成人视屏在线观看-国产99精品-国产精品1区2区-欧美一级在线观看-国产一区二区日韩-色九九九

您的位置:首頁技術文章
文章詳情頁

vue 基于abstract 路由模式 實現頁面內嵌的示例代碼

瀏覽:5日期:2022-10-19 15:42:12
abstract 路由模式

abstract 是vue路由中的第三種模式,本身是用來在不支持瀏覽器API的環境中,充當fallback,而不論是hash還是history模式都會對瀏覽器上的url產生作用,本文要實現的功能就是在已存在的路由頁面中內嵌其他的路由頁面,而保持在瀏覽器當中依舊顯示當前頁面的路由path,這就利用到了abstract這種與瀏覽器分離的路由模式。

路由示例

export const routes = [ { path: '/', redirect: 'abstract-route', }, { path: '/embed-route', name: 'embedded', component: () => import(/* webpackChunkName: 'embed' */ '../views/embed.vue'), }, { path: '/abstract-route', name: 'abstract', component: () => import(/* webpackChunkName: 'abstract' */ '../views/abstract.vue'), },];const router = new VueRouter({ mode: 'history', base: process.env.BASE_URL, routes,});

本次示例有兩個路由,分別為abstract,embedded,其中abstract視圖上展開一個抽屜,抽屜當中顯示embedded的視圖。即:

<template> <div> <RouterDrawer :visible.sync='visible' :path='{ name: ’embedded’ }' size='50%' ></RouterDrawer> <el-button @click='visible = true'>open drawer</el-button> </div></template>// embedded views<template> <div> embedded views </div></template>

vue 基于abstract 路由模式 實現頁面內嵌的示例代碼

router-drawer 封裝

當前項目默認是history 的路由模式,因此在進入abstract頁面時,瀏覽器Url為http://127.0.0.1:8010/abstract-route,而router-drawer要做的是在此基礎上,重新實例化一個abstract模式的路由,然后在組件當中利用<router-view />去掛載要被內嵌的目標頁面。即:

<template> <el-drawer :visible.sync='visible' v-bind='$attrs' :before-close='handleClose' > <router-view /> </el-drawer></template><script>import { routes } from '../router/index';import VueRouter from 'vue-router';export default { name: 'router-drawer', props: { path: { type: Object, required: true, }, visible: { type: Boolean, required: true, default: false, }, }, // 此處實例化一個新的router來配合當前頁面的router-view router: new VueRouter({ mode: 'abstract', base: '/', routes, }), methods: { handleClose() { this.$emit('update:visible', false); }, }, mounted() { console.log('drawer router', this.$router); this.$router.push(this.path); },};</script>

通過打印日志可以得出兩個實例化的路由:

vue 基于abstract 路由模式 實現頁面內嵌的示例代碼

這樣即可實現在不改變當前頁面path的前提下加載其他路由中的views了。

代碼示例

以上就是vue 基于abstract 路由模式 實現頁面內嵌的示例代碼的詳細內容,更多關于vue 實現頁面內嵌的資料請關注好吧啦網其它相關文章!

標簽: Vue
相關文章:
主站蜘蛛池模板: 色婷婷久久综合中文久久蜜桃 | 亚洲 欧美 精品 中文第三 | 亚洲情a成黄在线观看 | 国产二区三区毛片 | 国产精品三区四区 | 性xxx69xxx视频在线观看 | 欧美日韩午夜视频 | 亚洲精品91 | 欧美成人观看视频在线 | 久久亚洲精品一区成人 | 日韩欧美亚洲每的更新在线 | 欧美午夜视频一区二区三区 | 91最新地址永久入口 | 天干夜天天夜天干天ww | 色综合视频一区二区观看 | 亚洲精品午夜国产va久久成人 | 一级特色大黄美女播放网站 | 看一级特黄a大片日本片 | 国产成人免费影片在线观看 | 九九51精品国产免费看 | 高清国产露脸捆绑01经典 | 久草在线资源视频 | 美女视频全部免费 | 最新在线步兵区 | 免费观看女人一摸全是水 | 久久免费视频在线观看30 | www.热| 99精品国产免费久久国语 | 久久精品视频网站 | 九九视频高清视频免费观看 | 悠悠影院欧美日韩国产 | 一级毛片aaaaaa免费看 | 91亚洲最新精品 | 欧美ox | 欧美另类亚洲一区二区 | 国产精品综合久成人 | 精品国产一二三区在线影院 | 国产精品久久久久久福利漫画 | 国产一级做a爰片久久毛片男 | 欧美三级网站在线观看 | 亚洲成人免费在线观看 |