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 をインストールするチュートリアル図

推薦する

Linux システムでのユーザー管理の概要

目次1. ユーザーとユーザーグループの重要性1) ユーザーの存在意義2) ユーザーグループの重要性2...

jQueryはテーブル行データのスクロール効果を実現します

この記事の例では、テーブル行データのスクロール効果を実現するためのjQueryの具体的なコードを参考...

ネイティブJSで禁止すべきメソッドの記述

目次ブロックレベル関数オブジェクトのプロトタイプを直接変更すると呼び出された人発信者評価ブロックレベ...

Vue サーバーに js 構成ファイルをインポートする方法

目次背景成し遂げるvue-cli2.0での設定方法の補足要約する背景プロジェクトにはローカル構成ファ...

Linux プロセスの CPU 使用率が 700% に達し、終了できない場合の解決策

目次1. 問題の発見2. プロセスの詳細情報を表示する3. 解決策4. 大法を再開する1. 問題の発...

HTMLタグの書き方でよくある間違い

注意を払う必要があります。HTML Police がコードを調べて、意味のないタグをすべて見つけ出す...

フレックスレイアウトは左のテキストオーバーフローを実現し、右のテキストの適応を省略します

テキストの長さに応じて、左側のテキストの幅を自動調整できる状況を実現したい。1行が表示できない場合、...

Linux の who コマンド例の紹介

誰についてシステムにログインしているユーザーを表示します。 who コマンドを実行すると、現在システ...

Linux リダイレクトの使用方法の詳細な説明

誰でも時々データをコピーして貼り付ける必要があると思います。コピーして貼り付けるためにファイルを開く...

vue+el-element でファイル名に応じてダイアログを動的に作成する実践

目次背景成し遂げる1. カプセル化された /utils/dialogControl.js 2.ダイア...

ico ミラー コードを HTML に追加します (favicon.ico はルート ディレクトリに配置されます)

コード:コードをコピーコードは次のとおりです。 <!DOCTYPE html PUBLIC &...

vue.js ルーターのネストされたルートの実例

目次序文Vue CLI での設定基本コードVueルーターの登場ネストされたルートの設定要約する序文V...

HTML テーブル マークアップ チュートリアル (39): ヘッダーの明るい境界線の色属性 BORDERCOLORLIGHT

テーブル ヘッダーでは、明るい境界線の色を個別に定義できます。基本的な構文<TH ボーダーカラ...

Tomcat で複数の war パッケージを展開する方法と手順

1 背景JDK1.8-u181とTomcat8.5.53がインストールされました。インストール後、環...