我使用restangular来调用外部API。仅当我从控制器中删除单引号时,GET请求才有效。虽然,当我尝试添加失败的角度图表时,除非我添加引号。因此,一个或另一个工作取决于是否添加。我需要两个都工作,所以可以使用API的数据图表。此外,我在使用或不包含引号的浏览器中都没有看到任何错误。
这是部分app.js
var app = angular.module('mymod', ['ngRoute', 'ngResource', 'ui.bootstrap', 'chart.js', 'restangular'])
.config(function($routeProvider, RestangularProvider) {
$routeProvider
.when('/', {
templateUrl: 'app/main/main.html',
controller: MainCtrl // <--- This is what I'm referring to
})
.otherwise({
redirectTo: '/'
});
// Set base url
RestangularProvider.setBaseUrl('https://something.com/api/v1');
// Auth details
RestangularProvider.setDefaultHeaders({
'Authorization': 'Token token=mytoken',
'Content-Type': 'application/json',
});
// Format
RestangularProvider.setRequestSuffix('.json');
// Data extractor
RestangularProvider.setResponseExtractor(function(response, operation) {
return response.incidents;
});
});
// Graph Example
app.controller('MainCtrl', function($scope) {
$scope.labels = ["Download Sales", "In-Store Sales", "Mail-Order Sales"];
$scope.data = [300, 500, 100];
});
我添加了使用严格的&#39 ;;到app.js的顶部,我现在看到这个错误:ReferenceError:我没有定义。
其中引用了下面的i in循环。
$scope.update = function(pages) {
for (i = 0; i < pages; i++) {
Restangular.all("incidents").getList({offset:25 * i, sort_by: "created_on:desc"})
.then(function(result) {
Array.prototype.push.apply($scope.incidents,result);
})
}
};
另外,我一直在使用下面提到的代码示例,并发现了一些我已经修复的问题,但我是Angular的新手,所以很难。 参考:code example