AngularJS app.controller语法错误

AngularJS app.controller syntax error?

本文关键字:错误 语法 controller app AngularJS      更新时间:2023-12-26

我正在将代码应用到这个家伙运行的项目中https://github.com/simpulton/angular-photo-slider/blob/master/js/app.js.他已经有了一个语法错误,控制台告诉你这一点,但在我修复它之后,控制台只给出了模糊的"SyntaxError:syntax-error"消息。以下是我一直在努力做的事情:

var app = angular.module('LOC Search', ['ngAnimate']);
app.controller('locListCtrl', ['$scope', function ($scope, $http)) {
$http.jsonp('http://loc.gov/pictures/collections?fo=json&callback=process=JSON_CALLBACK').success(function(data) {
$scope.slides = data.collections;
}
}]);

有人有什么建议吗?此外,AngularJS的不同版本将产生不同的结果。。。不确定在这个特定的例子中使用哪一个。谢谢!

有些地方有双括号,有些地方缺失。

试试这个:

var app = angular.module('LOC Search', ['ngAnimate']);
app.controller('locListCtrl', ['$scope', '$http', function ($scope, $http) {
    $http.jsonp('http://loc.gov/pictures/collections?fo=json&callback=process=JSON_CALLBACK').success(function(data) {
        $scope.slides = data.collections;
    });
}]);

您忘记注入$http服务。

尝试:

app.controller('locListCtrl', ['$scope', '$http', function ($scope, $http) {
   ...

或者你也可以做:

app.controller('locListCtrl', function ($scope, $http) {
    ...

但第二个则不太推荐使用,因为如果缩小代码,代码将无法工作。

相关文章: