3

プロジェクトを SystemJS から、breeze-client と datajs (OData サポート用) を使用している WebPack に変換しようとしています。全体として、これは angular2 アプリケーションであるため、breeze-bridge-angular2 もプロジェクトの一部です。

SystemJS バージョンは正常に動作しますが、WebPack バージョンはエラーをスローします。

OData を初期化できません。リモート OData をサポートするために必要

どうやら問題は、breeze-client が global.window.OData で OData ライブラリを見つけられないことです。いくつかの簡単なデバッグは、根本的な原因が "global.window" が一般的に未定義であるように見えることを示しています (関数 __requireLibCore で)。datajs は webpack に正しく含まれているように見えるため、問題は datajs の欠落ではなく、一般に、breeze-client が「ウィンドウ」にアクセスできないことに注意してください。

デバッグの詳細

私はトピック全体にかなり慣れていないので、正しい解決策を特定するのに苦労しています。これを機能させるには、 webpackで何かを構成する必要があると思いますが、これが何であるかはわかりません.

どんな助けでも大歓迎です。

4

1 に答える 1

1

私は同じ問題を抱えていて、この問題を解決するために webpacks importsloader を使用しました。モジュールに変数を挿入できます。詳細はこちら

私のwebpack構成からのスニペットは次のとおりです。

        { test: require.resolve('breeze-client/breeze.debug'), loader: 'imports-loader?this=>window,global=>{window: this}'},
于 2017-01-05T13:12:18.717 に答える