また、非常に大きなライブラリであり、傍受ポイントがどこにあるかを特定するのに苦労しています...誰かアドバイスはありますか??? ありがとうございました
質問する
494 次
2 に答える
1
問題を正しく特定しました。現在、Breeze は XHR を想定していますが、angular は XHR を返しません。angular の http サービスを 'breeze' ajax アダプターとしてラップできるようにするために、次のいくつかのリリースの 1 つで実現する機能のリクエストがあります。
今のところ: (これの残りの部分は投機的でテストされていませんが、一般的なアイデアは機能するはずです)、最善の策は、既存の「ajax」アダプターの装飾されたバージョンを作成することです。のようなものです。
var origAjaxCtor = breeze.config.getAdapter("ajax");
var newAjaxCtor = function () {
this.name = "newAjax";
this._origAjaxCtor = new origAjaxCtor();
}
newAjaxCtor.prototype = new oldAjaxCtor(); // to delegate all other methods
newAjaxCtor.prototype.ajax = function (settings) {
settings.success = function((data, textStatus, XHR) {
// call the original success code
settings.success(data, textStatus, XHR);
// followed by your custom scope code.
// ...do your scope apply here...
});
// perform the actual ajax call - this will call your custom success method from above.
this._origAjaxCtor.ajax(settings);
}
// register the new adapter
breeze.config.registerAdapter("ajax", newAjaxCtor);
// make this adapter the default
breeze.config.initializeAdapterInstance("ajax", "newAjax", true);
于 2013-06-07T00:58:26.420 に答える
0
Breeze 1.4.4 の時点で、$http を使用する angular ajax アダプターがサポートされるようになりました。詳細については、1.4.4 のリリース ノートを参照してください。
特定の問題については、angular ajax アダプターの setHttp メソッドを使用すると、Breeze に $http インスタンスを内部的に使用させることができます。
于 2013-10-15T20:52:49.287 に答える