2016-10-21 3 views
3

私は達成しようとしているものがそれほど難しくないと感じています。しかしwebpackドキュメントは深刻な混乱状態にあり、私はこれに多くの時間を燃やしています。webpackプラグインにモジュール/依存関係を動的に追加する方法はありますか?

「ダイナミック」モジュールをウェブパックビルドに挿入するにはどうすればよいですか?ビルド時にこのモジュールを作成したいと思います。

簡単な例として、ビルド時にこの文字列を新しいモジュールとして挿入するにはどうすればよいですか?

var myDate = require('myDate'); 

"module.exports = new Date();" 

は、その後、私は、そのモジュールは、私は非常に私のアプリケーションでは、他のモジュールと同様に、それを解決することができるようになり名前「MyDateに該当」

を持つようにしたいと言うことができます

これは非常に簡単な例です。私の目的ははるかに複雑で、この "動的な"モジュールを作成するためにファイルを読むことが必要になります。私はプラグインを定義していることを認識しており、残念なことに私のニーズに合っていません。

私は非常に助けていただければ幸いです。ありがとう。あなたが実装を検討し、ご自身を試すことができREADME.md

const VirtualModulePlugin = require('./virtual-module-webpack-plugin'); 

    // ... 

    plugins: [ 
    new VirtualModulePlugin({ 
     moduleName: 'src/mysettings.json', 
     contents: JSON.stringify({ greeting: 'Hello!' }) 
    }) 
    ] 
} 

を説明virtual-module-webpack-plugin

使用例:

+1

ひとつのアイデアは、 'のvarいるMyDate =必要(「./パス/には/動的生成/ /ファイル」)を行うことであろうあなたが望むことを何でも意味します。それはまったく役に立ちますか? – jmeas

+0

@jmeasええ、私もそれを考えていました。私はプラグインを使用する人のファイルシステムにCruftファイルを追加しているので、やりたくはありませんでした。また、物理ファイルへの長い「必要な」パスがあります。エイリアスタイプのものがもっと必要な場所。 – jennas

+2

jsを生成するwebpackローダープラグインを作成し、それをWebpackコンパイルプロセスに渡すこともできます。 –

答えて

3

は、このプラグインを見つけました。 ` 、その後、ビルド時に、あなたが使用してそのパスにファイルを作成します。

関連する問題