前言:
最近修改以前一个 angularJs 写的前端的一个小功能。 很久没碰过这东西,我也没精力做全栈。这个功能大概是 一个 页面controller A 的事件触发之后,要通知另一个 页面 controller b 清空页面数据。想了想,查了查,记录一下。
处理方式:
1. controller A 中 通过 $rootScope 添加 广播事件
$scope.test = function () {
……
// 广播事件
$rootScope.$broadcast('replayChanged', []);
}
2. controller B 中 通过 $rootScope 监听 广播事件
// 监听事件
$rootScope.$on('replayChanged', function(event, data){
$scope.data = data;
changeTest();
});
function changeTest() {
……
}
controller 之间通讯有多种方式,可参考这位仁兄的博客