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

推薦する

W3C標準に準拠したHTML標準で注意すべき点を詳細に解説

XML/HTML コードコンテンツをクリップボードにコピー<!DOCTYPE html PUB...

MySQLで日付を比較する方法の詳細な説明

データ型が datetime であるフィールド add_time を持つテーブル product が...

HTMLはシンプルで美しいログインページを作成します

まずは見てみましょう。 HTML ソースコード: XML/HTML コードコンテンツをクリップボード...

Dockerコンテナのデータを復元する方法

プロジェクトのテスト環境データベースのデータが失われてしまったので、記録しておきたいと思います。当時...

MySQLスケーラブル設計の基本原則

目次序文1. スケーラビリティとは何ですか?スケールアウトの利点:スケールアウトのデメリット:スケー...

INS と DEL を使用してドキュメントの変更をマークする方法の詳細な説明

ins と del は、HTML 4.0 で導入され、文書の作成時に作成者が共同作業できるようにし、...

MySQL公式パフォーマンステストツールmysqlslapの使い方の紹介

目次導入説明書実際の経験まとめ導入MySQL は最も人気のあるオープンソース データベースとして、さ...

docker compose helloworld を使い始めるための詳細なプロセス

前提条件Compose は、Docker コンテナをオーケストレーションするためのツールです。Doc...

MySql の 4 つのトランザクション分離レベルについて簡単に説明します。

分離レベル:隔離はあなたが考えるよりも複雑です。 SQL 標準では 4 つの分離レベルが定義されてお...

PXEを使用してLinuxシステムを自動的に展開する方法

目次背景DHCPの設定DHCP ファイル (動的ホスト構成プロトコル) の編集tftp 設定sysl...

フレームセットを使用してワイドスクリーンを中央に配置するためのヒントを共有する

コードをコピーコードは次のとおりです。 <フレームセット cols="*,1280,...

InnoDB エンジンのパフォーマンスを最適化するための my.cnf パラメータ構成

私はインターネット上で数え切れないほどの my.cnf 構成を読みましたが、言及されている構成のほと...

Jenkins初心者のためのDockerデプロイメントチュートリアルの詳細な説明

この記事では、docker 経由で Jenkins+Maven+SVN+Tomcat をデプロイし、...

Node.js での組み込みモジュールとカスタムモジュールの実装

1. コモンズCommonjsはNode.jsのカスタムモジュールですCommonjs 仕様は、Ja...

ウェブデザイナーは適した人材

<br />この世に道はない。より多くの人が歩くようになると、それは道になります。最初は...