Angularjs 一个UI引导数据采集器如何更新多个控制器?
我是Angular JS的新手,我怀疑答案是使用工厂,但这超出了我目前的能力Angularjs 一个UI引导数据采集器如何更新多个控制器?,angularjs,Angularjs,我是Angular JS的新手,我怀疑答案是使用工厂,但这超出了我目前的能力 我可以在我的日期选择器的控制器中设置$scope.$watch(),当值发生变化时,设置一个$rootscope变量,并让其他控制器$rootscope.$watch()这样吗?是的,你的直觉绝对正确,这是我想到的最清晰的方式: app.service("dateService",function(){ var selectedDate=null; return { getSelected
我可以在我的日期选择器的控制器中设置
$scope.$watch()
,当值发生变化时,设置一个$rootscope
变量,并让其他控制器$rootscope.$watch()
这样吗?是的,你的直觉绝对正确,这是我想到的最清晰的方式:
app.service("dateService",function(){
var selectedDate=null;
return {
getSelectedDate:function(){
return selectedDate;
},
setSelectedDate:function(date){
selectedDate=date;
},
};
})
在控制器中:
app.controller("ctrl1",function($scope,dateService){
$scope.$watch("dt",function(date){
if(date){
dateService.setSelectedDate(date);
}
},true);
});
app.controller("ctrl2",function($scope,dateService){
$scope.$watch(dateService.getSelectedDate,function(date){
$scope.dateFromTheOtherController=date;
},true);
});