Tôi hiện đang theo dõi hướng dẫn trong AngularJS. Đây là mã trong tệp controllers.js của tôi.
'use strict';
angular.module ('F1FeederApp.controllers' , [] )
.controller ('driversController' , function ($scope , ergastAPIservice) {
$scope.nameFilter = null;
$scope.driversList = [];
ergastAPIservice.getDrivers().success (function (response) {
$scope.driversList = response.MRData.StandingsTable.StandingsLists [ 0 ].DriverStandings;
});
});
tôi nhận được các lỗi sau đây:
1) Bị chặn nguồn nạp từ url không được phép bởi chính sách $ sceDelegate.
2) Lỗi Loại:. ErgastAPIservice.getDrivers (...) thành công không phải là một chức năng
Tôi không đặc biệt chắc chắn ở tất cả những gì có thể gây ra những sai sót, tôi rất mới để kiễu góc. Sự khác biệt duy nhất có thể, tôi đã nhìn thấy giữa tôi và các ví dụ khác là trong khối mã này: (services.js)
'use strict';
angular.module ('F1FeederApp.services' , [] )
.factory ('ergastAPIservice' , function ($http) {
var ergastAPI = {};
ergastAPI.getDrivers = function() {
return $http ({
method : 'JSONP' ,
url : 'http://ergast.com/api/f1/2013/driverStandings.json?callback=JSON_CALLBACK'
});
};
return ergastAPI;
});
Sự khác biệt tôi đã nhận thấy là trong tôi có một dấu chấm phẩy ở kết thúc của hàm getDrivers và tôi có câu lệnh use strict
ở đầu tệp. Tuy nhiên, grunt từ chối chạy ứng dụng mà không có cả hai dòng, vì vậy tôi không nghĩ rằng đó có thể là vấn đề.
Nếu có ai có thể chỉ cho tôi đúng hướng ở đây, tôi sẽ rất biết ơn.