我已初步使用我的服务并编写了一个使用Breeze.js进行ajax调用的方法,因为文档说setHttp($http)
已经足够了,但我无法进行ajax调用。
breeze.NamingConvention.camelCase.setAsDefault();
factory.sample = function() {
var serviceRoot = "";
var serviceName = serviceRoot + '/sample/2787'; // sample GET URL
new breeze.EntityManager(serviceName);
// use the current module's $http for ajax calls
var ajax = breeze.config.initializeAdapterInstance('ajax', 'angular');
var data = ajax.setHttp($http);
return data;
};
有人能和我一起出去吗?
答案 0 :(得分:0)
我不清楚你想从代码示例中得到什么。据我所知,你想轻松使用Angular的$ http服务来发出ajax请求。以下是应该如何做的:
var ajaxAdapter = breeze.config.initializeAdapterInstance("ajax", "angular");
ajaxAdapter.setHttp($http);
breeze.ajaxpost(ajaxAdapter);
文档说setHttp($ http)就足够了,但是我无法进行ajax调用。
Breeze不应该进行纯粹的ajax调用。使用$ http代替!
答案 1 :(得分:0)
目前还不清楚您在Angular应用中的位置,以及您是否正确注入了$ http服务。
作为一般规则,最好在app.run模块的早期初始化Breeze ajax适配器,如下所示。
angular.module('app').run(['$http', function($http) {
// tell the adapter to use your app module's $http for ajax calls
var ajax = breeze.config.initializeAdapterInstance('ajax', 'angular');
ajax.setHttp($http);
}]);
还有一个Breeze.Angular服务实际上为您执行上述配置。
请参阅'使用AngularJS $ http适配器'有关详细信息,请参阅http://www.breezejs.com/documentation/customizing-ajax部分。