我有以下内容:
$scope.$watch('tableForm.$pristine', function (newValue) {
$rootScope.$broadcast("tableDataUpdated",
{ state: $scope.tableForm.$pristine });
});
我也尝试过:
$scope.$watch('tableForm.$pristine', function (newValue) {
var tableForm = { pristine: $scope.tableForm.$pristine };
$rootScope.$broadcast("tableDataUpdated", tableForm);
});
当tableForm
$pristine
状态更改时,$scope.tableForm.$pristine
的值将设置为False
并广播此消息。但是,当我尝试接收消息时,未定义“状态”的值:
$rootScope.$on("tableDataUpdated", function (args) {
alert(args.state);
});
我也尝试过:
$rootScope.$on("tableDataUpdated", function (args) {
alert(args.tableForm);
});
我仍然似乎无法发送对象并接收它
最佳答案
这是因为在侦听器函数中传递了两个参数event
和args
。参见the angular docs.
尝试:
$ rootScope。$ on(“tableDataUpdated”,函数(事件,参数){
警报(args.state);
});
关于angularjs - 如何使用$ broadcast发送对象?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17779745/