[解決済み] webpack を使ってディレクトリから画像を動的にインポートする
2022-05-18 08:12:35
質問
ES6を使ってwebpackで画像やアイコンを取り込むための現在のワークフローを紹介します。
import cat from './images/cat1.jpg'
import cat2 from './images/cat2.svg'
import doggy from './images/doggy.png'
import turtle from './images/turtle.png'
<img src={doggy} />
これはすぐに厄介なことになります。私が欲しいのはこんな感じです。
import * from './images'
<img src={doggy} />
<img src={turtle} />
特定のディレクトリにあるすべてのファイルを、拡張子を除いた名前で動的にインポートし、必要に応じてそれらのファイルを使用する方法があるはずだと感じています。
誰かこれが行われるのを見たか、またはそれについて最善の方法についての考えをお持ちですか?
UPDATEです。
選択した回答を使って、こんなことができました。
function importAll(r) {
let images = {};
r.keys().map((item, index) => { images[item.replace('./', '')] = r(item); });
return images;
}
const images = importAll(require.context('./images', false, /\.(png|jpe?g|svg)$/));
<img src={images['doggy.png']} />
どのように解決するのですか?
<ブロッククオート特定のディレクトリにあるすべてのファイルを、拡張子を除いた名前で動的にインポートし、必要に応じてそれらのファイルを使用する方法が必要な気がします。
ES6ではありません。全体のポイントは
import
と
export
は、依存関係を決定することができることです
静的
つまり、コードを実行することなく決定できることです。
しかし、あなたはwebpackを使用しているので、以下を参照してください。
require.context
. というようにすればよい。
function importAll(r) {
return r.keys().map(r);
}
const images = importAll(require.context('./', false, /\.(png|jpe?g|svg)$/));
関連
-
[解決済み] reactでonloadを使うには?
-
[解決済み] Webpack のコンパイルに失敗した
-
[解決済み] nginxでcertbotを使用する際の問題点
-
[解決済み] 矢印本体を囲む予期せぬブロックステートメント
-
[解決済み] react-navigation v5を使ったreact-nativeアプリのAppNavigatorの構文を更新する。
-
[解決済み] React Router - バージョン更新後のwithRouterでTypescriptエラーが発生する。
-
[解決済み] webpackのファイルローダーで画像ファイルを読み込む方法
-
[解決済み] Webpackで静的ファイルをビルドディレクトリにコピーする方法は?
-
[解決済み】Node.jsのrequireとES6のimport/exportを使い分ける。
-
[解決済み] React + ES6 + webpackを使用してコンポーネントをインポートおよびエクスポートする方法?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】Typescript react - モジュール ''react-materialize'' の宣言ファイルが見つかりませんでした。'path/to/module-name.js' は暗黙のうちに any 型を持ちます。
-
[解決済み】Reactコンポーネント内でswitchステートメントを使用するには?
-
[解決済み】React Propsが定義されていません。
-
[解決済み] React.createElement: type is invalid -- expected a string.
-
[解決済み] MUI Boxは何のためのコンポーネントですか?
-
[解決済み] ReactjsのEsLintの "react / jsx-props-no-spreading "エラーを無効化する。
-
[解決済み] eslint: no-case-declaration - case ブロックで予期しない字句の宣言があった。
-
[解決済み] Static HTML elements with event handlers require a role." を修正するにはどうすればよいですか?
-
[解決済み] reactのuseStateフックでコールバックを使う方法 [重複]。
-
[解決済み] Reactプロジェクトに.envファイルを追加する