React和Vue实现路由懒加载

React实现路由懒加载: React官方提供了React.lazy()函数来实现路由的懒加载。使用React.lazy()函数需要配合React的Suspense组件来使用。

  1. 首先,使用React.lazy()函数动态导入组件,例如:

    const Home = React.lazy(() => import('./Home'));
    const About = React.lazy(() => import('./About'));

这样,在需要使用这些组件的地方,可以像使用普通组件一样使用它们。

  1. 在路由配置中,使用React.lazy()返回的组件作为路由组件的值,例如:

  2. 最后,在根组件中,使用Suspense组件来包裹需要懒加载的路由组件,例如:

    import React, { Suspense } from 'react';

    function App() {
    return (


    <Suspense fallback={
    Loading...
    }>

    {/* 路由配置 */}



    );
    }

    export default App;

在Suspense组件中,可以设置fallback属性来指定在组件加载完成前显示的loading状态。

Vue实现路由懒加载: Vue官方提供了Vue异步组件特性来实现路由的懒加载。使用Vue异步组件特性需要使用Vue的工厂函数(Vue.extend())来动态创建组件。

  1. 首先,创建一个异步函数来动态导入组件,例如:

    const Home = () => import('./Home');
    const About = () => import('./About');

这样,在需要使用这些组件的地方,可以像使用普通组件一样使用它们。

  1. 在路由配置中,使用Vue异步组件作为路由组件的值,例如:

    const routes = [
    { path: '/home', component: Home },
    { path: '/about', component: About },
    ]

  2. 最后,在创建Vue实例时,使用工厂函数(Vue.extend())来创建路由组件,例如:

    import Vue from 'vue';
    import VueRouter from 'vue-router';

    Vue.use(VueRouter);

    const router = new VueRouter({
    routes
    });

    new Vue({
    router,
    render: h => h(App)
    }).$mount('#app');

这样,路由组件将会在访问对应路由时进行懒加载。

相关推荐
柚yuzumi6 小时前
变量明明定义了,为什么访问不到?深入理解 JavaScript 作用域
javascript
何时梦醒6 小时前
React + TypeScript + Vite 实战:从零构建 Color Picker 应用
前端·javascript·架构
Highcharts.js6 小时前
基于Highcharts开发的OHLC 股票K线图完全指南
javascript·信息可视化·echarts·数据可视化·highcharts·ohlc
英勇无比的消炎药6 小时前
TinyRobot v0.5.0 深度解读(三):Layout 组件——如何组织复杂工作区的页面布局
前端·vue.js
默_笙6 小时前
😋 我让 DeepSeek-R1 在浏览器本地跑了起来,后端同事说"你认真的?"
前端·javascript
英勇无比的消炎药6 小时前
TinyRobot v0.5.0 深度解读(四):CLI 脚手架——从零搭建 AI 应用的工程化实践
前端·vue.js·github
李明卫杭州7 小时前
Vue3 响应式概念 ↔ React 对应方案(类组件与函数组件)对照笔记
前端·vue.js·react.js
英勇无比的消炎药7 小时前
拖文件进来会发生什么:TinyRobot DragOverlay 与 v-dropzone 协同指南
vue.js
Revolution617 小时前
reactive 对象重新赋值后,表单为什么没有恢复默认值
前端·vue.js·面试