Reactプロジェクトで画像を導入するいくつかの方法

Reactプロジェクトで画像を導入するいくつかの方法

imgタグは画像を導入します

reactは実際にはjsリーダー関数を介してページをレンダリングするため、src="path"を直接記述して画像をインポートすることはできません。

モジュールをインポートするのと同じようにイメージをインポートできます

'./../../../../asset/img/user.png' から img をインポートします。

次のように紹介する必要がある

<img src={require('../images/picture.png')} alt="ラベル"/>

背景画像紹介

1 1つ目は、通常の方法で新しいCSSファイルを作成し、CSS構文を直接記述することです。

.img {
   背景: url('../images/picture.png') 0 0 繰り返しなし;
}

2 2番目の方法は、変数を介してReactコンポーネントに導入し、変数をimgタグに直接割り当てることです。

// 画像ファイルをインポート import bg from '../images/bg.png'
// 文字列連結によってスタイルオブジェクトを定義する const imgStyle = {
  幅: '100%'、
  高さ: '500px'、
  背景画像: 'url(' + bg + ')',
  背景位置: 'center 0'、
  背景サイズ: '2045px 472px',
  背景繰り返し: '繰り返しなし'
}
クラス Home は Component を拡張します {
 コンストラクタ(){
  スーパー(小道具)
 }
 与える() {
  //最後に変数をタグに直接割り当てます <div style="imgStyle">
   ...
  </div>
 }
}

必要とする

また、vue の場合と同様に、相対パスを require でラップし、src に直接割り当てることもできます。

<img width="100" height="100" src={require('./../../../../asset/img/user.png')} alt="" className={'user-img'}/>

**注:** ファイルローダーライブラリのバージョンが異なるため、若干の違いがあるため、ここで問題が発生します。ファイルローダーライブラリの上位バージョンでは、esModule はデフォルトで true に設定され、require は文字列パスではなく ES モジュールを返します。この ES モジュールのデフォルト属性は文字列パスなので、次のように記述する必要があります。

<img width="100" height="100" src={require('./../../../../asset/img/user.png').default} alt="" className={'user-img'}/>

ファイルローダーのバージョンについては心配する必要はありません。require を直接使用してもイメージを正常に表示できない場合は、require の後に .default を追加できます。

これで、React プロジェクトに画像を導入するいくつかの方法について説明したこの記事は終了です。React に画像を導入することに関するより関連性の高いコンテンツについては、123WORDPRESS.COM で以前の記事を検索するか、次の関連記事を引き続き参照してください。今後も 123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Reactの簡単な紹介
  • ReactプロジェクトにSCSSを導入する方法
  • ReactでAngularコンポーネントを導入する方法
  • ReactはコンテナコンポーネントとディスプレイコンポーネントをVueに導入します

<<:  MySQL の制限ページング最適化ソリューションの実装に関する簡単な説明

>>:  VMware 仮想マシンに CentOS と Qt をインストールするチュートリアル図

推薦する

Mysqlリモート接続構成を実装する2つの方法

Mysqlリモート接続構成を実装する2つの方法会社で働いていると、誰かのコンピュータに保存されている...

Vue3 における provide と inject の使用法と原則

序文:親コンポーネントと子コンポーネント間でデータを渡す場合、通常は props と emittin...

MySQL の instr を使用したファジー クエリ メソッドの紹介

MySQL の内部関数instrを使用すると、従来の like クエリ メソッドを置き換えることがで...

MySQLでconcat関数を使用する方法

以下のように表示されます。 //managefee_managefee テーブルの年と月を照会し、c...

nginx の 2 つのモジュールの proxy_pass の違い

1. 1.ngx_stream_proxy_moduleモジュールのproxy_passディレクティ...

テキストエリアの残りの単語数を動的に取得する方法

仕事で、これまで一度も書いたことのないケースに遭遇しました。午後の半分をその作業に費やし、ついに書き...

CentOS 7.2 は uniapp プロジェクトを展開するための nginx Web サーバーを構築します

Pantherは新人としてスタートし、今もまだ新人ですが、人々から学び、学んだことを時々皆さんと共有...

IDEA の Maven プロジェクトで MySQL 8.0 に接続して使用する方法に関するチュートリアル

まず、私の基本的な開発環境を見てみましょう。オペレーティングシステム: MacOS 10.13.5 ...

vuex で履歴を実装するためのサンプルコード

私は最近、ユーザー操作を元に戻す、またはやり直す機能を備えたビジュアル操作プラットフォームを開発して...

マテリアルデザインで水滴アニメーションボタンを実現するための純粋なCSS

序文こういう特殊効果ってよく見かけますよね。すごくかっこいいですよね。 これは、Google Mat...

事例を通してLinux NFSの仕組みを詳細に分析

前回の記事に引き続き、web02 サーバーを作成し、web01 サーバーと web02 サーバーの ...

Dockerはコンテナにポートを動的に公開します

コンテナのIPアドレスを表示するdocker examine <コンテナ名またはID> ...

関数の分類の詳細な説明とJavascriptでのこのポイントの例

JS で関数を定義する 3 つの方法例を挙げて説明しましょう。 <スクリプト> //メソ...

href をクリックした後にページがジャンプしないようにするための空のリンクの正しい書き方 # 問題

リンクを使用する必要がある場合もありますが、リンクする必要はありません。onclick イベントを処...

HTML の基本的な使用法には、リンク、スタイルシート、span、div などが含まれます。

1. リンクハイパーテキスト リンクは HTML において非常に重要です。基本的な形式は次のとおりで...