2016-04-12 36 views
1

私はReactとDjangoでプロジェクトを構築しています。また、Webpackを使用して変更をロードしています。私は、ローカルドライブから画像を表示したい。ローカルイメージが見つかりません

myProject/brandplug/static/app/photoGrid/SampleDisplay.jsx 

写真は次の場所にあります:に

私は写真を表示したいからファイルがある

myProject/brandplug/static/app/index.jsx 

myProject/brandplug/static/location_photos/ 

index.jsxファイルでありますReactがレンダリングされるhtmlファイルは、

です。 SampleDisplay.jsxからそう
myProject/accounts/templates/index.html 

私はこのような画像をインポートしてみました:

const itemStyle = { 
    backgroundImage: `{require("../location_photos/" + ${photoName})}` 
}; 

そして:

<div style={itemStyle}> 
</div> 

代わりの"../location_photos/"私も"../../location_photos/""../../brandplug/static/location_photos/"を使用してみました。

ただし、画像はまだ読み込まれません。

どうすればロードできますか?

+0

使用する前に画像が必要です。 'webpack'でファイルを要求し、それを使用する必要があります。名前でファイルを動的に要求しようとしています。https://jsfiddle.net/6uLLus9v/1/ –

+0

が必要です上記のように。 – octavian

+0

あなたのようにすることはできません。 Webpackはビルドプロセスの前にファイルを必要とし、ファイルを動的にロードすることはできません –

答えて

0

あなただけを必要と同じsytaxであることを起こる文字列であるとbackgroundImageのを設定しています。

あなたは画像を必要とし、それを使用できます。

const itemStyle = { 
    backgroundImage: {require(`../location_photos/${photoName}`)} 
}; 

を私はこれを試したことがありません。 THISご質問が役に立ちます。

私はあなたがイメージをロードするためのWebPACKを使用しようとしていないことを示唆しているが、代わりにそれを提供するためにはDjangoを求めるだろう。

あなたが /静的/

はまた、あなたは少し誤使用してバッククォート文字列テンプレートだった、つまり、あなたがを必要としないでホストされるように、あなたの静的ファイルを設定されているものと想定

const itemStyle = { backgroundImage: `url("/static/location_photos/${photoName}")}` }; 

+

`{require("../location_photos/${photoName}")}` 
関連する問題