Angular JS,json方法从控制器外部调用

时间:2014-07-29 15:53:32

标签: javascript json angularjs

我有一个代码,它在控制器中获取一个json 我需要知道如何从外部控制器调用内部方法。

var app;
(function (){
app = angular.module("gallery", []);

app.controller("galleryController", ['$scope','$http', function($scope, $http){
    var gallery = this;
    gallery.data = [];

    gallery.getJson = function(){
        $http.get('/urltojson/main-hero.json').success(function(data){
            gallery.data = data;
        });
    }

    this.getJson();
}]);  })();

是否可以从控制器外部调用getJson?

1 个答案:

答案 0 :(得分:1)

使用angular.element并获取您要在其中调用方法的控制器中的元素的scope()

示例:

<div ng-controller="galleryController"><span id="test"></span></div>

你可以这样做:

var scope = angular.element( document.querySelector( '#test' ) ).scope();
scope.getJson();