Webpack でホット リフレッシュとホット ロードを正しく使用する方法
今回は、webpack でホット リフレッシュとホット ロードを正しく使用する方法を説明します。webpack でホット リフレッシュとホット ロードを使用する際の 注意事項 について、実際のケースを見てみましょう。
スキャフォールディングからのホットリフレッシュとホットロードの違いを発見してください
ほとんどの Vue 開発者は vue-cli から始めると思いますが、vue-cli の設定を自由に変更することはできません。 webpack は確かに非常に複雑であり、vue-cli も初心者向けのエクスペリエンスを最適化するために多くの作業を行っています)。
対照的に、react は比較的堅牢な足場を提供しません (少なくとも私には明らかに見つかりません。教えていただければ幸いです)。私の知る限り、その 1 つは yeoman のgenerator-react-webpack、reactのcreate-react-app、そして優れたreact-starter-kit (ホットロードで、多くのコードが統合されており、よく参照されています) です。
React を学習していたとき、上記の最初の 2 つの React スキャフォールドがホット ロードではなくホット リフレッシュを提供することを発見しました。
ホットロードとホットリフレッシュの簡単な区別:
ホットリフレッシュ: ファイルが内部的に変更された後、状態(コンテンツが入力された入力フォームなど)を保持せずにページ全体が更新されます。 Webpack が F5 を押すのと同等です。 リフレッシュ
ホットロード: ファイルが変更された後、最小限のコストで変更された領域が変更されます。ファイルを変更する前の状態を保持するようにしてください (入力内容を入力した後、他のタグのコードを修正します)
どちらも従来の開発 (手動 F5) と比較して開発エクスペリエンスが向上していますが、両者の間にはまだ違いがあります非常に大きく、特にプロジェクトがより複雑になるにつれて、この問題をきっぱりと解決する必要があります (バグの開発により多くの時間を残しておきます)。
実践的な変更
ゼロからの設定は別の領域なので、vue-cli から直接変更を加え始めます。
以下の手順は、インスピレーションを参照するためのキーのみをリストしたものです。詳細については、最終的な github の完全なプロジェクトを参照してください
- 。
- パッケージ。 json 依存関係を babel-loader webpack-dev-server 反応ホットローダーに追加します (最も重要)
- package.json コマンド ライン設定 "dev": "webpack-dev-server --inline -- progress --config build /webpack.dev.conf.js"
- webpack.base.conf .jsx ファイルの追加は babel-loader で処理する必要があり、オプションを設定します: {plugins:['react-hot-loader/ babel']}
- .babelrc プリセットが React に追加され、プラグインが以下に追加されます: ['react-hot-loader/babel']
- src フォルダーに main.js を作成します (名前は(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); // 热加载的关键
問題
は、実際には main.js を単純に変更することですvue-cli 内のファイルをリアクション関連コードに編集し (jsx を処理できるように babel を設定することを忘れないでください)、引き続きホット リフレッシュを行います。 ローカル コードを観察して比較した後、魅力的な名前を見つけました: webpack.dev.conf ファイル内:new webpack.HotModuleReplacementPlugin()
、これがホット ロードを実現するための鍵であることが分かりました。コード自体には モジュール性 の性質があるため (つまり、3 つの主要なフレームワークのような再利用可能なコンポーネントを作成できるフレームワークはこの特性を利用できます)、コードの接続と接続解除によってホット ローディングを実現できます。
React の JSX 特殊効果は HotModuleReplacementPlugin では処理できず、ホット リフレッシュのみ可能です。 この場合、react-hot-loader が登場しようとしています。公式の使用方法に従って、ホットリロードを引き続き使用できます。 追記: 参考までに、私も多くの反応コードを調べて学習していますこの記事の事例を読んだ後は、この方法を習得したと思います。さらにエキサイティングな情報については、 の他の関連記事に注目してください。 PHPの中国語サイトです! 推奨読書:webpack でパッケージ化された大きなファイルを扱う方法
以上がWebpack でホット リフレッシュとホット ロードを正しく使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











iPhone で Web を閲覧すると、ブラウザ アプリが開いている限り、読み込まれたコンテンツが一時的に保存されます。ただし、Web サイトはコンテンツを定期的に更新するため、古いデータを消去して最新の公開コンテンツを確認するには、ページを更新することが効果的な方法です。こうすることで、常に最新の情報と経験を得ることができます。 iPhone でページを更新したい場合は、次の投稿ですべての方法を説明します。 SafariでWebページを更新する方法【4つの方法】 iPhoneのSafariアプリで閲覧中のページを更新する方法はいくつかあります。方法 1: [更新] ボタンを使用する Safari で開いているページを更新する最も簡単な方法は、ブラウザのタブ バーにある [更新] オプションを使用することです。サファなら

Windows 11/10 PC では F5 キーが正しく機能しませんか? F5 キーは通常、デスクトップまたはエクスプローラーを更新したり、Web ページをリロードしたりするために使用されます。ただし、読者の中には、F5 キーがコンピュータを更新していて、正しく動作しないと報告している人もいます。 Windows 11 で F5 更新を有効にする方法は? Windows PC を更新するには、F5 キーを押すだけです。一部のラップトップまたはデスクトップでは、更新操作を完了するために Fn+F5 キーの組み合わせを押す必要がある場合があります。 F5 キーを押して更新しても機能しないのはなぜですか? F5 キーを押してもコンピューターを更新できない場合、または Windows 11/10 で問題が発生している場合は、ファンクション キーがロックされていることが原因である可能性があります。その他の考えられる原因には、キーボードまたは F5 キーが含まれます

Vue は、インタラクティブで効率的な Web アプリケーションを迅速に構築するのに役立つ優れた JavaScript フレームワークです。 Vue3 は、多くの新機能が導入された Vue の最新バージョンです。 Webpack は現在最も人気のある JavaScript モジュール パッケージャーおよびビルド ツールの 1 つで、プロジェクト内のさまざまなリソースの管理に役立ちます。この記事では、Webpack を使用して Vue3 アプリケーションをパッケージ化してビルドする方法を紹介します。 1.Webpackをインストールする

ネットワークを日常的に使用する中でページの更新は頻繁に行われますが、Web ページにアクセスすると、Web ページが読み込まれない、表示が異常になるなどの問題が発生することがあります。現時点では、通常、問題を解決するためにページを更新することを選択しますが、ページを素早く更新するにはどうすればよいでしょうか?ページ更新のショートカット キーについて説明します。ページ更新ショートカットキーは、キーボード操作で現在のWebページを素早く更新する方法です。オペレーティング システムやブラウザが異なると、ページを更新するためのショートカット キーが異なる場合があります。以下では一般的な W を使用します。

フォーム検証は Web アプリケーション開発において非常に重要なリンクであり、フォーム データを送信する前にデータの有効性をチェックして、アプリケーションのセキュリティ脆弱性やデータ エラーを回避できます。 Web アプリケーションのフォーム検証は、Golang を使用すると簡単に実装できます。この記事では、Golang を使用して Web アプリケーションのフォーム検証を実装する方法を紹介します。 1. フォーム検証の基本要素 フォーム検証の実装方法を紹介する前に、フォーム検証の基本要素が何であるかを知る必要があります。フォーム要素: フォーム要素は

JavaAPI 開発における Web サーバー処理に Jetty7 を使用する インターネットの発展に伴い、Web サーバーはアプリケーション開発の中核部分となり、多くの企業でも注目を集めています。増大するビジネス ニーズを満たすために、多くの開発者が Web サーバー開発に Jetty の使用を選択しており、その柔軟性と拡張性は広く認識されています。この記事では、JavaAPI 開発における Jetty7 の使用方法を紹介します。

顔面遮蔽弾幕とは、映像内の人物を遮ることなく大量の弾幕が浮遊し、人物の背後から浮遊しているように見せることです。機械学習は数年前から普及していますが、これらの機能がブラウザでも実行できることは多くの人に知られていません。この記事では、ビデオ連発における実際的な最適化プロセスを紹介します。記事の最後に、適用可能なシナリオをいくつか示します。このソリューションを開くことを望んでいます。いくつかのアイデアがあります。 mediapipeDemo (https://google.github.io/mediapipe/) は、顔ブロック弾幕のオンデマンドアップアップロードの主流の実装原理を示していますサーバーのバックグラウンド計算により、ビデオ画面内のポートレート領域を抽出し、SVG ストレージに変換しますクライアントがビデオを再生している間、サーバーから SVG をダウンロードし、弾幕、ポートレートと組み合わせる

まず、frpって何?という疑問があると思います。簡単に言うと、frp はイントラネット侵入ツールであり、クライアントを設定すると、サーバー経由でイントラネットにアクセスできるようになります。現在、私のサーバーは Web サイトとして nginx を使用しており、ポート 80 が 1 つだけあります。では、FRP サーバーもポート 80 を使用したい場合はどうすればよいでしょうか?クエリ後、nginx のリバース プロキシを使用してこれを実現できます。追加: frps はサーバー、frpc はクライアントです。ステップ 1: サーバーの nginx.conf 構成ファイルを変更し、次のパラメータを nginx.conf の http{} に追加します。server{listen80
