Table des matières
Points clés:
Fractionnement de code en Vue avec des composants asynchrones
Différences:
Fractionnement basé sur l'itinéraire: les fruits les plus bas
Avancé: division des bibliothèques et code partagé
Dans WebPack:
Inviter:
Gotchas et meilleures pratiques
Maison interface Web Tutoriel H5 Fractionnement de code dans les applications Web modernes: un guide pour React et Vue

Fractionnement de code dans les applications Web modernes: un guide pour React et Vue

Jul 31, 2025 pm 12:35 PM
Applications Web fractionnement de code

La segmentation du code est cruciale pour les performances Web modernes et peut améliorer considérablement la vitesse de chargement et l'expérience utilisateur. 1. Utilisez React.lazy et suspense pour implémenter la segmentation de code de niveau de routage dans React, les composants de chargement uniquement en cas de besoin et afficher l'état de charge via le suspense; 2. Utilisez DefiSeSyncComponent ou Dynamic Import () pour implémenter le chargement des composants asynchrones dans VUE, prenant en charge la gestion des erreurs et le chargement retardé; 3. La segmentation au niveau de l'itinéraire est le point de départ le plus efficace, car il est cohérent avec la navigation utilisateur et prend automatiquement en charge la chaîne d'outils; 4. Extraire les dépendances partagées via WebPack ou Vite Configuration pour éviter le chargement répété de bibliothèques tierces; 5. Évitez la segmentation excessive, l'utilisation rationnelle du préchargement, le volume du package du moniteur et gérez élégamment l'état de charge pour obtenir des performances optimales. L'implémentation correcte de la segmentation du code peut rendre les applications React ou Vue plus réactives.

Le fractionnement du code n'est plus agréable à avoir - il est essentiel pour les performances Web modernes. À mesure que les applications React et Vue se développent en complexité, le chargement de tout dès le départ entraîne des charges initiales ralenties et une mauvaise expérience utilisateur. Le fractionnement du code aide en cassant votre pack JavaScript en morceaux plus petits, en chargeant uniquement ce qui est nécessaire lorsqu'il est nécessaire.

Voici comment implémenter une division de code efficace dans les applications React et Vue.


Pourquoi le fractionnement du code est important

Les grands faisceaux signifie des temps de téléchargement, d'analyse et d'exécution plus longs - en particulier sur les réseaux mobiles ou lents. Le fractionnement du code s'améliore:

  • Temps de chargement initial : les utilisateurs voient le contenu plus rapidement.
  • Utilisation de la mémoire : code moins inutilisé en mémoire.
  • Efficacité de mise en cache : les morceaux plus petits et plus ciblés peuvent être mis en cache indépendamment.

L'idée clé: diviser à des limites naturelles , comme les itinéraires, les composants ou les modules de fonction.


Code Spliting in React avec React.lazy et Suspense

React fournit une prise en charge intégrée pour les composants de chargement paresseux en utilisant React.lazy et Suspense .

 import {paresseux, suspense} de 'react';
import {BrowserRouter comme routeur, routeurs, route} à partir de «react-router-doM»;

const homepage = Lazy (() => import ('./ pages / page d'accueil'));
const aboutpage = lazy (() => import ('./ pages / peuple'));

Function App () {
  Retour (
    <Routeur>
      <Suspense Fallback = {<div> Chargement ... </div>}>
        <Routes>
          <Routier path = "/" élément = {<homepage />} />
          <Route Path = "/ About" Element = {<AboutPage />} />
        </ routes>
      </suspense>
    </bouter>
  ));
}

Points clés:

  • React.lazy fonctionne uniquement avec les exportations par défaut.
  • Suspense vous permet de montrer un secours pendant que le composant se charge.
  • Mieux utilisé au niveau de l'itinéraire - idéal pour la division par page.

? Remarque: Pour le rendu côté serveur (SSR), vous aurez besoin d'outillage supplémentaire (comme Next.js ou chargeurs WebPack personnalisés) car React.lazy est uniquement côté client.

Vous pouvez également diviser les composants non routés:

 const commentairesection = lazy (() => import (&#39;./ Composants / commentaire&#39;));

Mais faites cela uniquement pour les composants lourds et inférieurs.


Fractionnement de code en Vue avec des composants asynchrones

Vue gère les composants asynchronisés nativement à l'aide de defineAsyncComponent (VUE 3) ou Dynamic import() .

 import {deficeSyncComponent} de &#39;vue&#39;;
import {Createrouter} de &#39;Vue-Router&#39;;

const homepage = () => import (&#39;../ vues / homepage.vue&#39;);
const aboutpage = defiseSyncComponent (() =>
  importer (&#39;../ vues / ovrofpage.vue&#39;)
));

constants constants = [
  {path: &#39;/&#39;, composant: page d&#39;accueil},
  {Path: &#39;/ About&#39;, Composant: Aboutpage}
]]

const Router = Createrouter ({History: CreateWeBhistory (), Routes});

Différences:

  • L'utilisation import() directement dans les itinéraires permet automatiquement la division du code (Vue Router Vite ou WebPack).
  • defineAsyncComponent donne plus de contrôle (par exemple, la gestion des erreurs, les retards de chargement):
 const asyncComponent = DefiaSyncComponent ({{
  Loader: () => import (&#39;./ HeavyComponent.vue&#39;),
  retard: 200,
  errorComponent: errorComponent,
  Timeout: 5000
});

Ceci est utile pour les composants non routés qui sont coûteux à charger.


Fractionnement basé sur l'itinéraire: les fruits les plus bas

React et Vue bénéficient le plus de la division au niveau de l'itinéraire parce que:

  • Il s'aligne sur la navigation utilisateur.
  • Des outils comme React Router et Vue Router s'intègrent parfaitement aux bundlers.
  • Chaque itinéraire devient automatiquement un morceau séparé lors de l'utilisation de Dynamic import() .

WebPack, Vite et d'autres bundlers détectent import() et divisé en conséquence - pas de configuration supplémentaire nécessaire dans la plupart des cas.

✅ CONSEIL PRO: Nommez vos morceaux pour un meilleur débogage:

 const aboutpage = lazy (() => import (/ * webpackchunkname: "environ-page" * / &#39;./pages/aboutpage&#39;));

En Vue avec Vite, utilisez:

 () => import (&#39;../ vues / about.vue&#39;). puis (m => M.Default)
// VITE gère automatiquement le nom de la plupart des cas dans la plupart des cas

Avancé: division des bibliothèques et code partagé

Même avec le fractionnement des itinéraires, vous pourriez finir par dupliquer les bibliothèques (par exemple, Lodash, Date-FN). Utilisez votre bundler pour extraire les dépendances partagées.

Dans WebPack:

 // webpack.config.js
Optimisation: {
  Splitchunks: {
    morceaux: «tout»,
    Cachegroups: {
      fournisseur: {
        test: / [\\ /] node_modules [\\ /] /,
        Nom: «vendeurs»,
        morceaux: «tout»,
      },
    },
  },
}

Cela crée un vendors.chunk.js séparé.chunk.js pour les packages tiers.

Inviter:

Vite divise automatiquement le code du fournisseur. Vous pouvez le personnaliser:

 // Vite.config.ts
Exporter de défaut DefiConfig ({
  construire: {
    rollupoptions: {
      sortir: {
        manuels: {
          «Vue-Vendor»: [«Vue», «Vue-Router»],
          &#39;ui-lib&#39;: [&#39;élément-plus&#39;],
        }
      }
    }
  }
})

Cela vous donne un contrôle à grain fin sur ce qui va où.


Gotchas et meilleures pratiques

  • Ne pas sur-climatiser : trop de petits morceaux augmentent les frais généraux HTTP.
  • Évitez tout le chargement paresseux : divisez uniquement les grands composants rarement utilisés.
  • Moniteur Taille du faisceau : utilisez des outils tels que WebPack Bundle Analyzer ou Vite's rollup-plugin-visualizer .
  • Préload Critical Chunks : Utilisez <link rel="modulepreload"> (Vite) ou magic comments de WebPack:
     import (/ * webpackpreload: true * / &#39;./criticalcomponent&#39;)
  • Gérer les états de chargement gracieusement : utilisez des squelettes ou des filateurs pour améliorer les performances perçues.

  • La fractionnement du code, une fois bien fait, fait que votre application React ou Vue est rapide et réactive. Commencez par la division basée sur les itinéraires, puis optimisez le code partagé et les composants lourds. Les outils sont intégrés - il vous suffit de les utiliser.

    Fondamentalement: fendre par voie, chargement paresseux ce qui compte et laissez votre bundler gérer le reste.

    Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Tutoriel PHP
1527
276
Créez des applications Web internationales à l'aide du framework FastAPI Créez des applications Web internationales à l'aide du framework FastAPI Sep 29, 2023 pm 03:53 PM

Utilisez le framework FastAPI pour créer des applications Web internationales FastAPI est un framework Web Python hautes performances qui combine des annotations de type Python et une prise en charge asynchrone hautes performances pour rendre le développement d'applications Web plus simple, plus rapide et plus fiable. Lors de la création d'une application Web internationale, FastAPI fournit des outils et des concepts pratiques qui permettent à l'application de prendre facilement en charge plusieurs langues. Ci-dessous, je vais donner un exemple de code spécifique pour présenter comment utiliser le framework FastAPI pour construire

Comment développer une application Web d'une seule page à l'aide de Golang Comment développer une application Web d'une seule page à l'aide de Golang Jun 05, 2023 am 09:51 AM

Avec le développement continu d'Internet, la demande d'applications Web augmente également. Dans le passé, les applications Web étaient généralement composées de plusieurs pages, mais aujourd'hui, de plus en plus d'applications choisissent d'utiliser des applications à page unique (SPA). Les applications monopage sont très adaptées à l'accès mobile et les utilisateurs n'ont pas besoin d'attendre que la page entière soit rechargée, ce qui augmente l'expérience utilisateur. Dans cet article, nous présenterons comment utiliser Golang pour développer des applications SPA. Qu'est-ce qu'une application monopage ? Une application monopage fait référence à une application Web avec un seul fichier HTML. Il utilise Java

Comment PHP8 améliore-t-il les performances des applications web grâce à la compilation JIT ? Comment PHP8 améliore-t-il les performances des applications web grâce à la compilation JIT ? Oct 18, 2023 am 08:04 AM

Comment PHP8 améliore-t-il les performances des applications web grâce à la compilation JIT ? Avec le développement continu des applications Web et l'augmentation de la demande, l'amélioration des performances des applications Web est devenue l'une des priorités des développeurs. En tant que langage de script côté serveur couramment utilisé, PHP a toujours été apprécié des développeurs. Le compilateur JIT (compilation juste à temps) a été introduit dans PHP8, offrant aux développeurs une nouvelle solution d'optimisation des performances. Cet article explique en détail comment PHP8 améliore les performances des applications Web grâce à la compilation JIT et fournit des exemples de code spécifiques.

Rôle de MySQL: Bases de données dans les applications Web Rôle de MySQL: Bases de données dans les applications Web Apr 17, 2025 am 12:23 AM

Le rôle principal de MySQL dans les applications Web est de stocker et de gérer les données. 1.MySQL traite efficacement les informations utilisateur, les catalogues de produits, les enregistrements de transaction et autres données. 2. Grâce à SQL Query, les développeurs peuvent extraire des informations de la base de données pour générer du contenu dynamique. 3.MySQL fonctionne basé sur le modèle client-serveur pour assurer une vitesse de requête acceptable.

Utiliser Beego pour développer des applications Web avec une architecture de microservices Utiliser Beego pour développer des applications Web avec une architecture de microservices Jun 23, 2023 am 08:39 AM

Avec le développement d’Internet et la popularité des applications, la demande d’applications Web a également continué de croître. Afin de répondre aux besoins d'un grand nombre d'utilisateurs, les applications Web traditionnelles sont souvent confrontées à des goulots d'étranglement en termes de performances et à des problèmes d'évolutivité. En réponse à ces problèmes, l’architecture des microservices est progressivement devenue une tendance et une solution pour le développement d’applications Web. Dans l'architecture des microservices, le framework Beego est devenu le premier choix de nombreux développeurs. Son efficacité, sa flexibilité et sa facilité d'utilisation sont profondément appréciées par les développeurs. Cet article présentera l'utilisation du framework Beego pour développer des applications Web avec une architecture de microservices.

Compétences en développement Vue3+TS+Vite : Comment utiliser Vite pour le fractionnement de code et le chargement à la demande Compétences en développement Vue3+TS+Vite : Comment utiliser Vite pour le fractionnement de code et le chargement à la demande Sep 10, 2023 pm 12:57 PM

Compétences en développement Vue3+TS+Vite : Comment utiliser Vite pour le fractionnement de code et le chargement à la demande Avec la complexité de l'ingénierie frontale et l'augmentation de l'échelle des projets, l'optimisation du code est devenue un problème auquel chaque développeur doit faire face. Un aspect important de ceci est le fractionnement du code et le chargement à la demande. Le fractionnement du code peut diviser l'ensemble du code du projet en petits morceaux, et le chargement à la demande peut charger le code correspondant en cas de besoin, améliorant ainsi efficacement les performances et la vitesse de chargement des pages Web. Dans le projet Vue3+TypeScript, nous pouvons

Quels sont les avantages de l'utilisation de Java pour les applications Web qui doivent s'exécuter sur différents serveurs? Quels sont les avantages de l'utilisation de Java pour les applications Web qui doivent s'exécuter sur différents serveurs? May 03, 2025 am 12:13 AM

Java convient pour développer des applications Web inter-serveur. 1) La philosophie de "Write Once, Run Everwhere" de Java fait fonctionner son code sur n'importe quelle plate-forme qui prend en charge JVM. 2) Java a un écosystème riche, y compris des outils tels que le printemps et l'hibernate, pour simplifier le processus de développement. 3) Java fonctionne parfaitement dans la performance et la sécurité, offrant une gestion efficace de la mémoire et de solides garanties de sécurité.

Un guide complet pour créer des applications Web avec PHP et SOAP Un guide complet pour créer des applications Web avec PHP et SOAP Jul 30, 2023 am 10:25 AM

Un guide complet pour créer des applications Web à l'aide de PHP et SOAP À l'ère d'Internet d'aujourd'hui, les applications Web sont devenues un outil important pour gérer et interagir avec les données. En tant que langage de développement puissant, PHP peut être intégré de manière transparente à d'autres technologies, tandis que SOAP (Simple Object Access Protocol), en tant que protocole de communication basé sur XML, nous fournit une méthode simple, standard et extensible pour créer des services Web. Cet article vous fournira

See all articles