我有我的 MainCtrl(从 $routeProvider 和 html 调用):
function MainCtrl($scope, $routeParams){
//send data(see below) to AngularTemplate for apdate page
}
我有我的函数,它可以获取任何数据:
function getData($scope, $http){
/*
* Nav Data(here my navigate-structure fo site)
*/
$http({method: 'GET', url: 'data/main.json'}).
success(function(data){
//work with data and send it to MainCtrl
});
/*
* News Data(Here my news)
*/
$http({method: 'GET', url: 'data/news.json'}).
success(function(data){
//work with data and send it to MainCtrl
});
}
现在我明白了如何使用 .$on 和 .$broadcast 将数据从一个 Ctrl 发送到另一个 Ctrl。但是 getData 不是 Angular 控制器(它是一个 js 函数),它不理解我的 args($scope 和 $http)。请告诉我,如何在第一页加载时调用 getdata 并将数据发送到 MainCtrl。如果你知道,请告诉我我能用我的 MainCtrl 做什么,他只能从 $routeProvider 调用。现在它首先从 html(ng-controller) 调用,然后从 $routeProvider 调用。