最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

vue自動路由-單頁面項目(非build時構(gòu)建)

 更新時間:2019年04月30日 13:55:50   作者:吃西瓜的星星  
這篇文章主要介紹了vue自動路由-單頁面項目(非build時構(gòu)建),本文通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下

這是一個什么項目?

答:這是一個單頁面的vue.js項目,主要為了實現(xiàn)在非build時,進行自動路由。簡單點說,就是在請求頁面時,根據(jù)url進行動態(tài)添加路由。

自動路由有什么限制嗎?

答:有,因為是通過url進行動態(tài)添加,所以,在指定文件夾下,組件文件的相對路徑必須與url有一定的關(guān)系。當前demo項目,url路徑與modules文件夾下的組件相對路徑一致。例如:

url地址:localhost:5000/home/index

組件路徑:modules/home/index/index.vue

此方式的自動路由能做些什么?

答:

1.動態(tài)權(quán)限控制:在匹配不上路由時,請求后臺獲取是否有權(quán)限,根據(jù)后臺的反饋處理是否添加路由(是否允許訪問)。

2.自動跳轉(zhuǎn)首頁、404頁面等頁面

項目demo地址

vue.js單項目自動路由:https://github.com/bobowire/wireboy.samples/tree/master/vue.js/onepage

具體步驟

1.組件生成

在router文件夾下添加import.js文件,代碼如下圖:

 源碼:

module.exports = file => () => import('@/modules/' + file + '.vue')

2.攔截路由

 在src目錄下,添加autoroute.js文件,代碼如下圖:

源碼:

import router from './router'
const _import = require('./router/import')// 獲取組件的方法
router.beforeEach(async (to, from, next) => {
 // 默認的首頁頁面
 if (to.fullPath === '/') {
 next('/home/index')
 } else if (to.matched.length === 0) {
 // 獲取組件路徑
 let componentpath = to.fullPath.substring(1) + '/' + to.fullPath.substring(to.fullPath.lastIndexOf('/') + 1)
 // 添加路由
 router.addRoutes([{
 path: to.fullPath,
 name: to.fullPath.substring(to.fullPath.lastIndexOf('/') + 1),
 component: _import(componentpath)
 }])
 // 路由重匹配
 next({ ...to, replace: true })
 } else {
 next()
 }
}) 

總結(jié)

以上所述是小編給大家介紹的vue自動路由-單頁面項目(非build時構(gòu)建),希望對大家有所幫助,如果大家有任何疑問歡迎給我留言,小編會及時回復(fù)大家的!

相關(guān)文章

  • vue如何防范XSS攻擊的一些方法

    vue如何防范XSS攻擊的一些方法

    xss的攻擊方式是發(fā)生在用戶使用瀏覽器時候運行,通過嵌入腳本竊取用戶信息,本文主要介紹了vue如何防范XSS攻擊的一些方法,感興趣的可以了解一下
    2024-04-04
  • Vue.JS入門教程之列表渲染

    Vue.JS入門教程之列表渲染

    這篇文章主要為大家詳細介紹了Vue.JS入門教程之列表渲染,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-12-12
  • uniapp+vue3實現(xiàn)上傳圖片組件封裝功能

    uniapp+vue3實現(xiàn)上傳圖片組件封裝功能

    這篇文章主要介紹了uniapp+vue3實現(xiàn)上傳圖片組件封裝功能,首先創(chuàng)建一個?components 文件在里面進行組件的創(chuàng)建,本文通過實例代碼給大家介紹的非常詳細,需要的朋友可以參考下
    2024-07-07
  • Vue3?在<script?setup>里設(shè)置組件name屬性的方法

    Vue3?在<script?setup>里設(shè)置組件name屬性的方法

    這篇文章主要介紹了Vue3?在<script?setup>里設(shè)置組件name屬性的方法,本文通過示例代碼給大家介紹的非常詳細,需要的朋友參考下吧
    2023-11-11
  • Vue中keep-alive的兩種應(yīng)用方式

    Vue中keep-alive的兩種應(yīng)用方式

    這篇文章主要介紹了Vue中keep-alive的兩種應(yīng)用方式,文中講解非常細致,代碼幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下
    2020-07-07
  • vue2中使用less簡易教程

    vue2中使用less簡易教程

    這篇文章主要介紹了vue2中使用less簡易教程,由于不需要手動配置webpack,所以vue中使用less是非常簡單的,只需要安裝less,less-loadder就ok了
    2018-03-03
  • vue+axios實現(xiàn)post文件下載

    vue+axios實現(xiàn)post文件下載

    這篇文章主要為大家詳細介紹了vue+axios實現(xiàn)post文件下載,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-09-09
  • Vue2.4+新增屬性.sync、$attrs、$listeners的具體使用

    Vue2.4+新增屬性.sync、$attrs、$listeners的具體使用

    這篇文章主要介紹了Vue2.4+新增屬性.sync、$attrs、$listeners的具體使用,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-03-03
  • vue實現(xiàn)公共組件傳值并及時監(jiān)聽到數(shù)據(jù)更新視圖

    vue實現(xiàn)公共組件傳值并及時監(jiān)聽到數(shù)據(jù)更新視圖

    這篇文章主要介紹了vue實現(xiàn)公共組件傳值并及時監(jiān)聽到數(shù)據(jù)更新視圖方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-01-01
  • Vue3使用 createApp 自定義通用Dialog的方法

    Vue3使用 createApp 自定義通用Dialog的方法

    這篇文章主要介紹了Vue3使用 createApp 自定義通用Dialog的方法,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友參考下吧
    2024-01-01

最新評論

乌海市| 嘉义市| 福州市| 咸阳市| 崇礼县| 清河县| SHOW| 华宁县| 宜兴市| 青川县| 灵丘县| 桂阳县| 隆子县| 石家庄市| 东源县| 什邡市| 来凤县| 周口市| 浏阳市| 和林格尔县| 莱阳市| 建始县| 涿州市| 宝丰县| 普陀区| 陵水| 罗田县| 临漳县| 化德县| 汾阳市| 荥阳市| 佛学| 冀州市| 九龙县| 固镇县| 秀山| 休宁县| 浦县| 平谷区| 顺昌县| 微山县|