古いアプリケーションを書き換え、ゆっくりとwebpackを使用して断片をラップします。古いコードベースとの互換性を維持するために、global
にあるいくつかの機能があり、しばらくの間アクセス可能なままにする必要があります。私はoutput
オブジェクトlibrary
のプロパティを設定しようとしましたが、これは動作します。しかし、私は3つの空のオブジェクト(各エントリポイントのための)を含む私のライブラリで終わる。私はexpose-loader
のプラグインと同じ結果を調べました。私はそれが自分の理解に欠けていると確信していますが、それでも学習曲線を描こうとしています。問題の記事SO多くの影響(https://stackoverflow.com/a/39166592/1893557)画像でentryPoint関数をグローバルに公開する
entry: {
app: './app.js',
mystc: './mystc/index.js',
vendor: [
// 'jquery',
'angular',
'angular-aria',
'angular-animate',
'angular-messages',
'angular-sanitize',
'angular-material',
'angular-material-data-table',
'moment',
'bootstrap',
'pikaday',
'timepicker',
'ng-infinite-scroll',
'atrament',
'node-waves',
'cache-autocomplete'
]
},
output: {
// path: __dirname + '/js',
path: __dirname + '/js-webpack',
filename: '[name].bundle.js',
libraryTarget: 'var',
library: ['GlobalAccess', "[name]"]
},
を撮影^^^あなたは、この設定のための出力に含まが表示されます。何mystc
エントリポイントの内部にあることである:
require("./loadtesting");
require("./utilities");
require("./webnotifications");
require("./ajaxclient");
require("./Number");
これらのファイルは、それぞれのファイルにエクスポートされた多くの機能を指します。だから、これらの関数は、アプリケーションの多くの部分で使用され、名前を変更したり、今のところコードベースで呼び出されているすべての関数を修正する必要はありません。このようなエントリオブジェクトの配列で
もう少し掘り下げた後、実際には、エクスポートされた関数をarraの最後のモジュールに公開していますyをエントリポイントに追加します。 –