.factory内部的Angular函数



我试图在.factory内运行一个函数以获取帖子,但我在控制器上得到一个未定义的错误。

.factory('Portfolio', function($http, $log) {
  //get jsonp
    this.getPosts = function($scope) {
        $http.jsonp("http://test.uxco.co/json-test.php?callback=JSON_CALLBACK")
            .success(function(result) {
                $scope.posts = $scope.posts.concat(result);
                $scope.$broadcast("scroll.infiniteScrollComplete");
            });
    };
});

.controller('PortfolioCtrl', function($scope, Portfolio) {
    $scope.posts = [];
    Portfolio.getPosts($scope);

谢谢!

你写的是service而不是factory。所以你要么

  • .factory改为.service
  • 或者像这样在对象内返回函数
<>之前。factory('Portfolio', function($http, $log) {//获得jsonp返回{getPosts:函数($scope) {$ http.jsonp ().success(函数(结果){美元的范围。post = $scope.posts.concat(result);范围。广播美元("scroll.infiniteScrollComplete");});};}});之前

检查服务和工厂之间的差异

像这样使用。factory代码

.factory('Portfolio', function($http, $log) {
  //get jsonp
   return{
       getPosts: function($scope) {
        $http.jsonp("http://test.uxco.co/json-test.php?callback=JSON_CALLBACK")
        .success(function(result) {
            $scope.posts = $scope.posts.concat(result);
            $scope.$broadcast("scroll.infiniteScrollComplete");
        });
      };
    }
});

相关内容

  • 没有找到相关文章

最新更新