React スキャフォールディングのパスエイリアスを設定する方法

React スキャフォールディングのパスエイリアスを設定する方法

この記事を書いている時点でのReactのバージョンは16.13.1です

1 npm run ejectコマンドを入力して、プロジェクトのルートディレクトリにconfigディレクトリを生成します。

2 confilgの下のwebpack.config.jsファイルを開き、次の場所を見つけます。

エイリアス: {
   // React Native Web をサポート
   // https://www.smashingmagazine.com/2016/08/a-glimpse-into-the-future-with-react-native-for-web/
   'リアクトネイティブ': 'リアクトネイティブウェブ',
   // ReactDevTools でよりよいプロファイリングが可能になります
   ...(isEnvProductionProfile && {
     'react-dom$': 'react-dom/プロファイリング',
     'スケジューラ/トレース': 'スケジューラ/トレースプロファイリング',
   })、
   ...(modules.webpackAliases || {})、
},

3 以下のように変更し、プロジェクトを再起動します

エイリアス: {
   // React Native Web をサポート
   // https://www.smashingmagazine.com/2016/08/a-glimpse-into-the-future-with-react-native-for-web/
   'リアクトネイティブ': 'リアクトネイティブウェブ',
   // ReactDevTools でよりよいプロファイリングが可能になります
   ...(isEnvProductionProfile && {
     'react-dom$': 'react-dom/プロファイリング',
     'スケジューラ/トレース': 'スケジューラ/トレースプロファイリング',
   })、
   ...(modules.webpackAliases || {})、
   // ファイルパスエイリアス '@': path.resolve(__dirname, '../src'),
   '@view': パスを解決します(__dirname, '../src/view'),
},

プロキシを設定します。

シンプルバージョン構成:

package.json に直接追加: "proxy": "http://localhost:4000"

フルバージョンの構成:
(1)ダウンロード:yarn add http-proxy-middleware
(2)srcディレクトリに次の内容のsetupProxy.jsを作成します。

  const proxy = require('http-proxy-middleware')
  モジュール.エクスポート = 関数(アプリ) {
   アプリを使用する(
    proxy.createProxyMiddleware('/api', { //api を含むリクエストは転送する必要があります target: 'http://localhost:4000', // これはサーバーのアドレスです changeOrigin: true, //値はブール値です。true の場合、リクエストを受信して​​ユーザーに代わってリクエストを送信するための仮想サーバーがローカルに作成されます。
     パス書き換え: {'^/api': ''}
    })
   )
  }

3. 注意: React スキャフォールディングがプロキシで構成された後、リソースを要求するときにフロントエンド リソースが最初に要求されます。リソースがない場合、バックエンド リソースが要求されます。

React スキャフォールディングのパスエイリアスを設定する方法についての記事はこれで終わりです。React スキャフォールディングのパスエイリアスを設定する方法の詳細については、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後も 123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Reactでファイルパスエイリアスを素早く設定する方法

<<:  MySQL テーブルをコピーする 3 つの方法 (要約)

>>:  JPQLに基づく純粋なSQL文方式の詳細な説明

推薦する

Zabbix の psk 暗号化と zabbix_get 値の組み合わせ

Zabbix バージョン 3.0 以降、Zabbix サーバー、Zabbix プロキシ、Zabbix...

Linux でファイル内の特定の文字の数を数える方法

ファイル内の文字列の数を数えることは、実際には砂の中の石を探すようなものです。ある人は、石を見た後に...

人気の宇宙飛行士ウォッチフェイスをJavaScriptで実装するための完全なコード

1. エフェクト表示JavaScript で書かれた宇宙飛行士のウォッチフェイス。 http://x...

MySQLトランザクションが効率に与える影響の分析と概要

1. データベース トランザクションによりデータベースのパフォーマンスが低下します。データの一貫性と...

TCPソケットSYNキューとAcceptキューの差異分析

まず、「LISTENING」状態の TCP ソケットには 2 つの独立したキューがあることを理解する...

CSS3 で @media を使用して Web ページの適応を実現するためのサンプル コード

現在、コンピュータモニターの画面解像度はますます高くなる傾向にありますが、携帯電話などのモバイルデバ...

CentOS7 での mysql 5.7.23 のバイナリ インストール

インターネット上のインストール情報は不均一で、落とし穴だらけです。インストールにはかなりの労力がかか...

モバイルデバイス用のメタタグ設定の完全なリスト

序文以前フロントエンドを勉強していたとき、メタタグに対する私の理解はこの一文だけでした。 <メ...

MySQL はどのようにしてマスターとスレーブの一貫性を確保するのでしょうか?

目次MySQLマスタースレーブの基本原理3つのbinlog形式の比較混合形式のバイナリログが存在する...

画像のシームレスなスクロールを実現する JavaScript タイマー

この記事では、画像のシームレスなスクロールを実現するためのJavaScriptの具体的なコードを参考...

Linux で履歴レコードを表示し、タイムスタンプを追加するためのヒント

Linux で履歴レコードを表示し、タイムスタンプを追加するためのヒントbashに詳しい人なら、hi...

DevUI で独自の Angular コンポーネント ライブラリを構築する方法

目次序文コンポーネントライブラリの作成主要な構成の変更ディレクトリレイアウトの調整ライブラリ構築のた...

ubuntu18.04 での qt5.12.8 のインストールと環境設定に関する詳細なチュートリアル

環境システム: Ubuntu 18.04ソフトウェア: qt5.12.8 1. インストールパッケー...

Dockerコンテナを使用してホストネットワークにアクセスする方法

最近、nginx をリバース プロキシとして使用し、docker で nginx を実行するシステム...

Docker に共通コンポーネント (mysql、redis) をインストールする方法

Dockerはmysqlをインストールします docker search mysql 検索 dock...