Get the App
SLTechnology News&Howtos  ›  Internet Technology  › 

How to realize Route dynamic loading in VUE

Shulou Source: shulou.com Published: 2022-05-31 12:06:49 10月02日 Update

This article focuses on "how to achieve dynamic routing loading in VUE". Interested friends may wish to have a look. The method introduced in this paper is simple, fast and practical. Now let the editor take you to learn "how to achieve dynamic routing loading in VUE"!

First of all, build a new vue project. Generally speaking, we will not specially deal with routing, but when there are more and more project pages, the routing configuration will become larger and larger, and the routing files will become difficult to maintain.

Import Vue from 'vue'import Router from' vue-router'import HelloWorld from'@ / components/HelloWorld'import Home from'@ / components/Home'import Test1 from'. / test1.router.js'import Test2 from'@ / components/children/Test2'import Test3 from'@ / components/children/Test3' Vue.use (Router) export default new Router ({routes: [{path:'/ HelloWorld', name:' HelloWorld', component: HelloWorld}, {path:'/', name:'Home' Component:Home, children: [{path:'/test2', name:'Test2', component:Test2,}, {path:'/test3', name:'Test3', component:Test3,}]})

This is a very simple routing file, we advanced the first step of optimization, classified by level 1 menu:

Create a new test1.router.js file and place all the routing information under the first-level menu test1

Export default {path:'/test1', name:'test1', component: () = > import ('@ / components/children/Test1'), children: []}

Component: () = > import ('@ / components/children/Test1') this is to configure the route to load lazily, and to optimize the slow loading of the first screen

Introduce this file in index.js

Import Vue from 'vue'import Router from' vue-router'import HelloWorld from'@ / components/HelloWorld'import Home from'@ / components/Home'import Test1 from'. / test1.router.js'import Test2 from'. / test2.router.js'import Test3 from'. / test3.router.js'Vue.use (Router) export default new Router ({routes: [{path:'/ HelloWorld', name:' HelloWorld', component: HelloWorld}, {path:'/', name:'Home' Component:Home, children: [Test1, Test2, Test3]}]})

To achieve this, many projects can already be satisfied, and the routing file is already very clear, but when the project is larger, it will still be unclear.

Import Vue from 'vue'import Router from' vue-router'import Home from'@ / components/Home'Vue.use (Router) let routers = [] Let getALLRouterMsg = (paths) = > {paths.keys () .forEach ((key) = > routers.push (paths (key) .default))} getALLRouterMsg (require.context ('., true,/\ .router\ .js /)) export default new Router ({routes: [{path:'/', name:'Home', component:Home, children: [... routers]}]}) so far I believe you have a deeper understanding of "how to achieve dynamic routing loading in VUE", so you might as well do it in practice. Here is the website, more related content can enter the relevant channels to inquire, follow us, continue to learn!

Tags: Routing file dynamic project content menu more and more more and more learning configuration practical deeper special slow large bad information advanced advanced interest Apple Docker Huawei Linux macOS MariaDB Microsoft MySQL NVidia OPPO Reno macOS Shulou Technology Microsoft Xiaomi Shulou Information