Home > Web Front-end > Vue.js > What is lazy loading of routes in Vue? Why do it?

What is lazy loading of routes in Vue? Why do it?

青灯夜游
Release: 2023-03-06 19:28:44
forward
2167 people have browsed it

What is lazy loading of routes in vue? Why do we need to lazy load routes? The following article will take you to understand the lazy loading of routes in Vue. I hope it will be helpful to you!

What is lazy loading of routes in Vue? Why do it?

Routing lazy loading

The essence of lazy loading is lazy loading or on-demand loading, that is, when needed Loading time.
There is no need to set lazy loading on the homepage. Once a page is loaded, it will not be loaded again when accessed again .

Why lazy loading of routing is necessary

  • #When packaging and building an application, the packaged code logic implementation package may be very large. When the user wants to use it, all resources will be requested.

  • When we package the components corresponding to different routes separately and load them when the route is accessed, it will be more efficient. [Related recommendations: vuejs video tutorial, web front-end development]

What routing lazy loading does

  • Load the components corresponding to the route into corresponding js packages.

  • The corresponding component will be loaded only when the route is accessed.

vue asynchronous component

Syntax:component:resolve=> (require(['Address of the route that needs to be loaded']), resolve)

// 官方文档:https://vue3js.cn/router4/guide/#html
// 引入vue-router对象
import { createRouter, createWebHistory, createWebHashHistory, ErrorHandler } from "vue-router";
/**
 * 定义路由数组
 */
const routes = [
  {// 404路由
    path: '/404',
    name: '404',
    component: resolve=>(require(["/@/views/404.vue"],resolve))
  },
];
 
/**
 * 创建路由
 */
const router = createRouter({
  history: createWebHistory("/"),
  routes,
});
/**
 * 输出对象
 */
export default router;
Copy after login

ES import commonly used

When the user accesses the component, the arrow function is executed
webpack: import dynamic import syntax can package the file separately
Syntax: const xxx = () =>import('needs to be loaded Module address')

// 官方文档:https://vue3js.cn/router4/guide/#html
// 引入vue-router对象
import { createRouter, createWebHistory, createWebHashHistory, ErrorHandler } from "vue-router";
/**
 * 定义路由数组
 */
const routes = [
  {// 404路由
    path: '/404',
    name: '404',
    component: ()=>import('/@/views/404.vue')
  },
];
 
/**
 * 创建路由
 */
const router = createRouter({
  history: createWebHistory("/"),
  routes,
});
/**
 * 输出对象
 */
export default router;
Copy after login

(Learning video sharing: vuejs introductory tutorial, Basic programming video)

The above is the detailed content of What is lazy loading of routes in Vue? Why do it?. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:csdn.net
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template