国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Vue3+vite路由配置優(yōu)化(自動(dòng)化導(dǎo)入)

這篇具有很好參考價(jià)值的文章主要介紹了Vue3+vite路由配置優(yōu)化(自動(dòng)化導(dǎo)入)。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

今天在維護(hù)優(yōu)化公司中臺(tái)項(xiàng)目時(shí),發(fā)現(xiàn)路由的文件配置非常多非常亂,只要只中大型項(xiàng)目,都會(huì)進(jìn)入很多的路由頁(yè)面,規(guī)范一點(diǎn)的公司還會(huì)吧路由進(jìn)行模塊化導(dǎo)入,但是依然存在很多文件夾的和手動(dòng)導(dǎo)入的問(wèn)題。

于是我想到了我之前使用vuex時(shí)進(jìn)行的模塊化自動(dòng)導(dǎo)入js文件,能不能使用到自動(dòng)導(dǎo)入.vue文件中去,答案是可以!

只需要 15行代碼就優(yōu)化 300行路由配置并且在也不用去后期手動(dòng)添加路由配置!解放之鼓啊,廢話不多說(shuō)直接上核心代碼。

注意:如果你view下面有組件,那么你需要給組件的文件命名:components/組件.vue,不限制層級(jí)你可以在view下任意地方創(chuàng)建components開(kāi)發(fā)你的私有組件

1.核心代碼

// 自動(dòng)路由配置(自動(dòng)導(dǎo)入views文件下所有的文件內(nèi)的.vue文件進(jìn)行注冊(cè)到路由,除了文件名叫components下的vue文件不會(huì)被注冊(cè)進(jìn)行路由,默認(rèn)這是一個(gè)組件文件夾)
const routeFiles = import.meta.glob('../views/**/*.vue'); // 獲取所有views文件下的.vue文件
const routesList = [] // 儲(chǔ)存符合路由頁(yè)面的對(duì)象內(nèi)容
// 會(huì)有一些頁(yè)面不需要自動(dòng)注冊(cè),需要我們手動(dòng)添加的就在這里上路徑
const notRead = ['../views/index.vue','../views/login.vue','../views/index-data.vue','../views/notFound.vue.vue'];
Object.keys(routeFiles).forEach(key => {
  if (key.indexOf('components') === -1 && notRead.indexOf(key) === -1) {// 排除組件 和 不需要自動(dòng)注冊(cè)的路由
    const name = key.match(/\.\/(.+)\.vue$/)[1];
    const component = routeFiles[key];
    routesList.push({
      path: `/${name.toLowerCase()}`,
      component: component.default || component,
      name: name
    });
  }
});

?文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-709877.html

2.完整代碼

import { createRouter, createWebHashHistory } from 'vue-router';
import storage from '@/utils/sessionStore.js';
import { defineAsyncComponent, h } from 'vue'

// 自動(dòng)路由配置(自動(dòng)導(dǎo)入views文件下所有的文件內(nèi)的.vue文件進(jìn)行注冊(cè)到路由,除了文件名叫components下的vue文件不會(huì)被注冊(cè)進(jìn)行路由,默認(rèn)這是一個(gè)組件文件夾)
const routeFiles = import.meta.glob('../views/**/*.vue'); // 獲取所有views文件下的.vue文件
const routesList = [] // 儲(chǔ)存符合路由頁(yè)面的對(duì)象內(nèi)容
// 會(huì)有一些頁(yè)面不需要自動(dòng)注冊(cè),需要我們手動(dòng)添加的就在這里上路徑
const notRead = ['../views/index.vue','../views/login.vue','../views/index-data.vue','../views/notFound.vue.vue'];
Object.keys(routeFiles).forEach(key => {
  if (key.indexOf('components') === -1 && notRead.indexOf(key) === -1) {// 排除組件 和 不需要自動(dòng)注冊(cè)的路由
    const name = key.match(/\.\/(.+)\.vue$/)[1];
    const component = routeFiles[key];
    routesList.push({
      path: `/${name.toLowerCase()}`,
      component: component.default || component,
      name: name
    });
  }
});

const routes = [
  {
    path: '/',
    name: 'login',
    component: () => import('@/views/login.vue')
  },
  {
    path: '/index',
    name: 'index',
    component: () => import('@/views/index.vue'),
    children: [
      {
        path: '/index-data',
        name: 'index-data',
        component: () => import('@/views/index-data.vue'),
      },
      ...routesList // 自動(dòng)配置在這個(gè)路由下(可以根據(jù)自己的需求進(jìn)行調(diào)整)
    ]
  },
  {
    path: '/404',
    name: '404',
    component: () => import('@/views/notFound.vue')
  },
];
const router = createRouter({
  history: createWebHashHistory(),
  routes
});
router.beforeEach((to, from, next) => {
    next()
});

export default router

3.路由地址說(shuō)明

直接通過(guò)文件夾路徑層級(jí)來(lái)寫訪問(wèn)路由即可 列如:

/views/device/grouping

/views/device/list

/views/device/index/appList

后期直接創(chuàng)建文件夾與vue文件即可 不需要再去維護(hù)路由配置文件

Vue3+vite路由配置優(yōu)化(自動(dòng)化導(dǎo)入)

?

?

完!

?

到了這里,關(guān)于Vue3+vite路由配置優(yōu)化(自動(dòng)化導(dǎo)入)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 二、搭建前后端分離的自動(dòng)化測(cè)試平臺(tái)的前端Vue3+Element-plus前端項(xiàng)目

    二、搭建前后端分離的自動(dòng)化測(cè)試平臺(tái)的前端Vue3+Element-plus前端項(xiàng)目

    1、Node獲取地址 https://nodejs.org/en/download 一直默認(rèn)選項(xiàng)安裝,安裝好了之后,在環(huán)境變量中會(huì)自動(dòng)配置Node的地址,可以在cmd中使用 node -v/npm -v命令驗(yàn)證是否下載成功 2、設(shè)置Node的配置內(nèi)容 (1)在安裝目錄下新建兩個(gè)文件夾命名為node_cache,和node_global: 其中 node_cache 是作為 緩

    2024年02月06日
    瀏覽(29)
  • vue3之vite創(chuàng)建h5項(xiàng)目之2 (sass公共樣式、聲明組件、路由配置和layout組件 )

    vue3之vite創(chuàng)建h5項(xiàng)目之2 (sass公共樣式、聲明組件、路由配置和layout組件 )

    pnpm i -D sass 1-1-1 main.ts 引入公共樣式方式 1-3-1 src / style / index.scss ( 適配iphonex等還有引入其他公共的樣式 ) 1-3-2 src / style / mixin.scss ( 公共樣式方法抽離 ) 1-3-3 src / style / reset.scss ( 重置樣式 ) 1-3-4 src / style / variables.scss ( 定義的公共變量樣式 ) 1-3-5 使用變量 3-1 路徑文件

    2024年02月05日
    瀏覽(52)
  • Vue3+Vite項(xiàng)目引入Element-plus并配置按需自動(dòng)導(dǎo)入

    Vue3+Vite項(xiàng)目引入Element-plus并配置按需自動(dòng)導(dǎo)入

    我使用的是 pnpm ,并且順便將 element-plus/icons 一起引入 如果您使用 Volar,請(qǐng)?jiān)诟夸浵?tsconfig.json 中通過(guò) compilerOptions.type 指定全局組件類型 3.1 首先你需要安裝 unplugin-vue-components 和 unplugin-auto-import 這兩款插件 3.2 然后把下列代碼插入到根目錄下 vite.config.ts 文件中 Element-lus官

    2024年02月13日
    瀏覽(29)
  • vite初始化vue3項(xiàng)目(配置自動(dòng)格式化工具與git提交規(guī)范工具)

    vite初始化vue3項(xiàng)目(配置自動(dòng)格式化工具與git提交規(guī)范工具)

    初始化項(xiàng)目 vite構(gòu)建vue項(xiàng)目還是比較簡(jiǎn)單的,簡(jiǎn)單配置選擇一下就行了 初始化命令 初始化最新版本vue項(xiàng)目 2. 基本選項(xiàng)含義 Add TypeScript 是否添加TS ADD JSX是否支持JSX ADD Vue Router是否添加Vue Router路由管理工具 ADD Pinia 是否添加pinia(狀態(tài)管理工具) Add ESLinit 是否添加ESLint是否添加

    2024年02月12日
    瀏覽(61)
  • 【Vue3-Flask-BS架構(gòu)Web應(yīng)用】實(shí)踐筆記1-使用一個(gè)bat腳本自動(dòng)化完整部署環(huán)境

    【Vue3-Flask-BS架構(gòu)Web應(yīng)用】實(shí)踐筆記1-使用一個(gè)bat腳本自動(dòng)化完整部署環(huán)境

    近年來(lái),Web開(kāi)發(fā)已經(jīng)成為計(jì)算機(jī)科學(xué)領(lǐng)域中最熱門和多產(chǎn)的領(lǐng)域之一。Python和Vue.js是兩個(gè)備受歡迎的工具,用于構(gòu)建現(xiàn)代Web應(yīng)用程序。在本教程中,我們將探索如何使用這兩個(gè)工具來(lái)創(chuàng)建一個(gè)完整的Web項(xiàng)目。我們將完成從安裝Python和Vue.js到項(xiàng)目部署的整個(gè)過(guò)程。 首先,確保你

    2024年02月07日
    瀏覽(94)
  • Vue3中,國(guó)際化插件vue-i18n使用記錄,配合VSCode自動(dòng)化翻譯插件i18n Ally

    Vue3中,國(guó)際化插件vue-i18n使用記錄,配合VSCode自動(dòng)化翻譯插件i18n Ally

    說(shuō)明文檔: vue-i18n 版本說(shuō)明: vue: 3.0.0+ vue-i18n: 9.x版 src 目錄下新建目錄 lang ,存放 i18n 的配置。 新建目錄名稱: lang (語(yǔ)言)、 locales (語(yǔ)系設(shè)定)、 i18n ,這些名稱都可被VSCode圖標(biāo)插件( vscode-icons )檢測(cè)到并美化。 lang 目錄下,新建 index.js 文件,引入 vue-i18n 。 語(yǔ)言的配置信

    2024年02月12日
    瀏覽(26)
  • Vue3動(dòng)態(tài)路由(Vite+Vue3+TS+Mock)

    Vue3動(dòng)態(tài)路由(Vite+Vue3+TS+Mock)

    Vue通過(guò)路由進(jìn)行頁(yè)面管理,不同的路由綁定到不同的頁(yè)面。一般來(lái)說(shuō),前端直接寫好的路由為靜態(tài)路由,在不修改代碼的情況下,路由表是不會(huì)改變的。對(duì)于不需要?jiǎng)討B(tài)改變路由表的網(wǎng)站,靜態(tài)路由就已經(jīng)足夠了,但是當(dāng)頁(yè)面需要與權(quán)限進(jìn)行綁定時(shí),不同用戶允許瀏覽的頁(yè)面

    2024年02月02日
    瀏覽(27)
  • vue3 + vite 性能優(yōu)化,詳細(xì)代碼說(shuō)明

    對(duì)于Vue 3和Vite應(yīng)用的性能優(yōu)化,以下是一些常見(jiàn)的技巧和建議: 使用Tree-shaking:Vue 3和Vite支持ES模塊的靜態(tài)分析,因此可以利用Tree-shaking特性,只引入項(xiàng)目中實(shí)際使用的模塊,減少打包體積。 懶加載路由:使用Vue Router的動(dòng)態(tài)導(dǎo)入功能,將路由按需加載,可以減少初始加載的

    2024年02月02日
    瀏覽(57)
  • 如何使用自動(dòng)化構(gòu)造隨機(jī)路由模型

    如何使用自動(dòng)化構(gòu)造隨機(jī)路由模型

    路由器測(cè)試中,為了最大程度還原現(xiàn)網(wǎng)路由情況,評(píng)估路由器在現(xiàn)網(wǎng)環(huán)境下穩(wěn)定工作各項(xiàng)指標(biāo),需要對(duì)導(dǎo)入路由進(jìn)行離散仿真,目前路由仿真可分為導(dǎo)入路由與生成路由兩種方式,導(dǎo)入路由需要現(xiàn)網(wǎng)路由表導(dǎo)入,本文討論重點(diǎn)為生成路由方式。 使用用戶界面生成路由時(shí),可根

    2024年02月16日
    瀏覽(16)
  • AutoDev 1.5.3:精準(zhǔn)的自動(dòng)化測(cè)試生成、本地模型強(qiáng)化與流程自動(dòng)化優(yōu)化

    AutoDev 1.5.3:精準(zhǔn)的自動(dòng)化測(cè)試生成、本地模型強(qiáng)化與流程自動(dòng)化優(yōu)化

    去年年初,我們開(kāi)源 AutoDev 的初衷是: AutoDev 是一款基于 JetBrains IDE 的開(kāi)源 AI 輔助編程插件。AutoDev 能夠與您的需求管理系統(tǒng)(例如 Jira、Trello、Github Issue 等)直接對(duì)接。在 IDE 中,您只需簡(jiǎn)單點(diǎn)擊,AutoDev 會(huì)根據(jù)您的需求自動(dòng)為您生成代碼。您所需做的,僅僅是對(duì)生成的代碼

    2024年01月16日
    瀏覽(24)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包