2016-05-15 5 views
8

私にはあまり意味がない問題があります。変数にrequire( '...')を使用し、webpackで文字列を使用する

"name"プロパティと "href"プロパティを持つオブジェクトの配列をマッピングしています。

let appleIcons = _.map(appleIcons, appleIcon => { 
    appleIcon.href = require(appleIcon.href); 
    return appleIcon; 
}); 

ループの内部では、イメージを要求したいが、エラー "。* $:11不明なエラー:モジュールを見つけることができません"が表示されます。

私はappleIcon.hrefの値を表示し、それを直接require( '')に入れようとします。

appleIcons = _.map(appleIcons, appleIcon => { 
    appleIcon.href = require('./../../mobile-config/apple-icon-57x57.png'); 
    return appleIcon; 
}); 

2番目の例が正常に動作し、最初のエラーが発生する理由を説明できますか?どのように変数をrequire( '')の中に入れますか?

ありがとうございます!

答えて

11

Webpackはビルド時に実行されているので、名前が動的変数のときにバンドルするモジュールを特定できません。パスの一部を指定することでヒントを与えることができます(たとえば、すべてのモジュールが単一のディレクトリにあることがわかっている場合など)。

この答えは助けることができる: https://stackoverflow.com/a/33048000

(またWebPACKのでrequire.contextをチェックする別の例は、カルマのテストで、hereを。。)

を代わりに - あなたが高度でファイル名を知っていれば、それは別のものを追加する方が良いでしょうビルドステップでファイルに文字列を出力すると、Webpackはそれをバンドルできます。

+1

うん、それがそれを解決しました。どうもありがとうございました! – Kitze

関連する問題