Maison interface Web js tutoriel Échafaudage, rafraîchissement à chaud et chargement à chaud

Échafaudage, rafraîchissement à chaud et chargement à chaud

Jun 09, 2018 am 10:42 AM
webpack

Cette fois, je vais vous apporter un échafaudage, un rafraîchissement à chaud et un chargement à chaud. Quelles sont les précautions à prendre pour l'échafaudage, le rafraîchissement à chaud et le chargement à chaud ? Voici un cas pratique, jetons un coup d'oeil.

Webpack est très puissant et un échafaudage raisonnable peut nous éviter beaucoup de travail fastidieux et dénué de sens. Parmi eux, l'actualisation à chaud et le chargement à chaud améliorent considérablement le rythme de développement par rapport au développement traditionnel.

Découvrez la différence entre l'actualisation à chaud et le chargement à chaud à partir d'un échafaudage

Je crois que la plupart des développeurs de vue partent de vue-cli, et de nombreux débutants courent avec plaisir avec le projet vue , je n'ose pas changer la configuration de vue-cli à volonté (après tout, webpack est effectivement très compliqué, et vue-cli a aussi fait beaucoup de travail pour optimiser l'expérience des débutants).

En revanche, React ne fournit pas un échafaudage relativement robuste (du moins il n'est pas visiblement trouvé par moi, j'espère que vous pourrez m'éclairer). Pour autant que je sache, l'un est le générateur-react-webpack de Yeoman, l'application create-react-app de React et un bon kit de démarrage de réaction (chargement à chaud et intègre beaucoup de code, qui est hautement référencé).
Quand j'apprenais React, j'ai découvert que les deux premiers échafaudages de réaction mentionnés ci-dessus fournissent un rafraîchissement à chaud plutôt qu'un chargement à chaud.

Distinction simple entre le chargement à chaud et l'actualisation à chaud :

Actualisation à chaud : une fois le fichier modifié, la page entière est actualisée sans conserver aucun statut (comme la saisie de contenu) Formulaire de saisie), ce qui équivaut à webpack vous aidant à appuyer sur F5 pour actualiser
Chargement à chaud : une fois le fichier modifié, la zone modifiée est modifiée au coût minimum. Conservez autant que possible l'état avant de modifier le fichier (après avoir saisi le contenu d'entrée, modifiez le code des autres balises)

Bien que les deux améliorent l'expérience de développement par rapport au développement traditionnel (manuel F5), les deux L'écart est encore énorme, d'autant plus que le projet devient plus complexe, il faut résoudre ce problème une fois pour toutes (en laissant plus de temps pour développer les bugs).

Modification pratique

La configuration à partir de zéro est un autre domaine, nous commençons donc à apporter des modifications directement à partir de vue-cli.

Les étapes suivantes répertorient uniquement la clé à titre de référence d'inspiration. Pour plus de détails, veuillez vous référer au projet complet final de github

  1. Supprimer les dépendances, les fichiers, etc. ; tout dans l'intégralité de la scr Vous pouvez supprimer la dépendance

  2. package.json et ajouter babel-loader webpack-dev-server react-hot-loader (le plus important)

  3. paramètre de ligne de commande package.json "dev": "webpack-dev-server --inline --progress --config build/webpack.dev.conf.js"

  4. webpack.base .conf L'ajout de fichiers .jsx doit être traité par babel-loader Options de configuration :{plugins :['react-hot-loader/babel']}

  5. Les préréglages .babelrc sont ajoutés pour réagir, ci-dessous Ajouter des plugins :['react-hot-loader/babel']

  6. Créez main.js dans le dossier src (le nom doit être cohérent avec le fichier d'entrée configuré par webpack)

import 'core-js/fn/object/assign';
import React from 'react';
import ReactDOM from 'react-dom';
import { hot } from 'react-hot-loader';
import App from './pages/App'; // 自己写吧
import './assets/css/reset.scss';
// Render the main component into the dom
ReactDOM.render(<App/>, document.getElementById('app'));
export default hot(module)(App); // 热加载的关键
Copier après la connexion

À ce stade, nous pouvons volontiers utiliser React pour expérimenter le plaisir du chargement à chaud~

Le problème est en fait

Modifiez simplement le fichier main.js dans vue-cli pour réagir au code lié (n'oubliez pas de configurer Babel pour gérer jsx) et toujours actualiser à chaud.

Après avoir observé et comparé le code local, j'ai trouvé un nom attrayant :

Dans le fichier webpack.dev.conf :

new webpack.HotModuleReplacementPlugin()
Copier après la connexion

Je l'ai découvert après une recherche en ligne C'est la clé pour réaliser un chargement à chaud. Cela nécessite que le code lui-même soit modulaire (ce qui signifie que tout framework capable d'écrire des composants réutilisables comme les trois frameworks principaux peut tirer parti de cette propriété), afin que le code puisse être branché et débranché. . Implémentez le chargement à chaud.

Les effets spéciaux jsx de React ne peuvent pas être gérés par HotModuleReplacementPlugin et ne peuvent être actualisés qu'à chaud.

Dans ce cas, React-hot-loader est sur le point de sortir. Conformément à la méthode d'utilisation officielle, vous pouvez continuer à utiliser le rechargement à chaud.

ps : Pour référence seulement, j'explore et apprends encore beaucoup de codes de réaction

Je pense que vous maîtrisez la méthode après avoir lu le cas dans cet article. Pour des informations plus intéressantes, veuillez. faites attention aux autres sujets connexes dans l'article du site Web PHP chinois !

Lecture recommandée :

Code d'état 302 dans axios

Encapsulez le crochet de navigation de routage Vue2 et utilisez-le dans le combat réel

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

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.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

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)

Tutoriel de démarrage VUE3 : empaquetage et création avec Webpack Tutoriel de démarrage VUE3 : empaquetage et création avec Webpack Jun 15, 2023 pm 06:17 PM

Vue est un excellent framework JavaScript qui peut nous aider à créer rapidement des applications Web interactives et efficaces. Vue3 est la dernière version de Vue, qui introduit de nombreuses nouvelles fonctionnalités et fonctionnalités. Webpack est actuellement l'un des packagers de modules et outils de construction JavaScript les plus populaires, qui peut nous aider à gérer diverses ressources dans nos projets. Cet article explique comment utiliser Webpack pour empaqueter et créer des applications Vue3. 1. Installez Webpack

Quelle est la différence entre vite et webpack Quelle est la différence entre vite et webpack Jan 11, 2023 pm 02:55 PM

Différences : 1. La vitesse de démarrage du serveur webpack est plus lente que celle de Vite ; car Vite n'a pas besoin d'être empaqueté au démarrage, il n'est pas nécessaire d'analyser les dépendances du module et de compiler, donc la vitesse de démarrage est très rapide. 2. La mise à jour à chaud de Vite est plus rapide que le webpack ; en termes de HRM de Vite, lorsque le contenu d'un certain module change, laissez simplement le navigateur demander à nouveau le module. 3. Vite utilise esbuild pour pré-construire les dépendances, tandis que webpack est basé sur le nœud. 4. L'écologie de Vite n'est pas aussi bonne que celle du webpack, et les chargeurs et plug-ins ne sont pas assez riches.

Comment utiliser PHP et Webpack pour le développement modulaire Comment utiliser PHP et Webpack pour le développement modulaire May 11, 2023 pm 03:52 PM

Avec le développement continu de la technologie de développement Web, la séparation front-end et back-end et le développement modulaire sont devenus une tendance répandue. PHP est un langage back-end couramment utilisé. Lors du développement modulaire, nous devons utiliser certains outils pour gérer et empaqueter les modules. Webpack est un outil d'empaquetage modulaire très facile à utiliser. Cet article explique comment utiliser PHP et Webpack pour le développement modulaire. 1. Qu'est-ce que le développement modulaire ? Le développement modulaire fait référence à la décomposition d'un programme en différents modules indépendants. Chaque module a sa propre fonction.

Comment Webpack convertit-il le module es6 en es5 ? Comment Webpack convertit-il le module es6 en es5 ? Oct 18, 2022 pm 03:48 PM

Méthode de configuration : 1. Utilisez la méthode d'importation pour placer le code ES6 dans le fichier de code js emballé ; 2. Utilisez l'outil npm pour installer l'outil babel-loader, la syntaxe est "npm install -D babel-loader @babel/core @babel/preset- env"; 3. Créez le fichier de configuration ".babelrc" de l'outil babel et définissez les règles de transcodage ; 4. Configurez les règles de packaging dans le fichier webpack.config.js.

Utilisez Spring Boot et Webpack pour créer des projets frontaux et des systèmes de plug-ins Utilisez Spring Boot et Webpack pour créer des projets frontaux et des systèmes de plug-ins Jun 22, 2023 am 09:13 AM

Alors que la complexité des applications Web modernes continue d’augmenter, la création d’excellents systèmes d’ingénierie frontale et de plug-ins devient de plus en plus importante. Avec la popularité de Spring Boot et Webpack, ils sont devenus une combinaison parfaite pour créer des projets frontaux et des systèmes de plug-ins. SpringBoot est un framework Java qui crée des applications Java avec des exigences de configuration minimales. Il fournit de nombreuses fonctionnalités utiles, telles que la configuration automatique, afin que les développeurs puissent créer et déployer des applications Web plus rapidement et plus facilement. W

Quels fichiers le package Vue Webpack peut-il contenir ? Quels fichiers le package Vue Webpack peut-il contenir ? Dec 20, 2022 pm 07:44 PM

En vue, webpack peut regrouper des fichiers js, css, images, json et autres dans des formats appropriés pour une utilisation par le navigateur. Dans webpack, js, css, images, json et d'autres types de fichiers peuvent être utilisés comme modules. Diverses ressources de module dans webpack peuvent être regroupées et fusionnées en un ou plusieurs packages, et pendant le processus de packaging, les ressources peuvent être traitées, comme la compression d'images, la conversion de scss en css, la conversion de la syntaxe ES6 en ES5, etc., qui peuvent être reconnu par le type de fichier HTML.

Qu'est-ce que Webpack ? Explication détaillée de son fonctionnement ? Qu'est-ce que Webpack ? Explication détaillée de son fonctionnement ? Oct 13, 2022 pm 07:36 PM

Webpack est un outil de packaging de modules. Il crée des modules pour différentes dépendances et les regroupe tous dans des fichiers de sortie gérables. Ceci est particulièrement utile pour les applications d'une seule page (le standard de facto pour les applications Web aujourd'hui).

Une analyse approfondie du processus de packaging et des principes du webpack Une analyse approfondie du processus de packaging et des principes du webpack Aug 09, 2022 pm 05:11 PM

Comment Webpack implémente-t-il le packaging ? L'article suivant vous donnera une compréhension approfondie des principes d'empaquetage de Webpack. J'espère qu'il vous sera utile !

See all articles