2つのファイルがあります。
Target.jsで:
<img src={require("../../../img/target.png")} />
Webpack.config.jsの場合:
14 module: {
15 loaders: [
16 { test: /\.js$/, loader: 'jsx-loader?harmony' },
17 { test: /\.css$/, loader: 'style-loader!css-loader' },
18 { test: /\.(png|jpg|jpeg|gif|woff)$/, loader: 'url-loader?limit=8192' },
画像を./[hash].png
にコンパイルします。
今、私はreact-router
を使用しているので、/help/targets/target
にいるので、webpackは画像にこのパス/help/targets/[hash].png
を与えています。ハッシュはsha1の合計です。パス/[hash].png
が与えられた場合、私は好むでしょう。ただ
このjsファイルの場合、ブラウザと同じように画像へのファイルパスが相対的であることをwebpackに理解させるにはどうすればよいですか?
その秘Theは、webpackにそのパスの基礎となる設定ヒントを与えることです:
使用する:
"output": { "publicPath": "/" }
Webpackが相対的でないことを伝えるため。