angular $emit发送 后退时$on多次接收
2016-05-11 08:55
591 查看
angular 并列作用域,作用域不存在上下级关系,$scope.$emit发送时 后退时$rootScope.$on会出现接收多个消息的情况
正确方式
$rootScope.$on('saveDraft', function() { $scope.saveDraft(); }); $rootScope.$on('previewPosition', function() { $scope.previewPosition(); }); $rootScope.$on('publishJob', function() { $scope.publishJob(); }); $scope.previewPosition = function() { $scope.$emit('previewPosition'); }; $scope.saveDraft = function() { $scope.$emit('saveDraft'); }; $scope.publishJob = function() { $scope.$emit('publishJob'); };
正确方式
$scope.$on('saveDraft', function() { $scope.saveDraft(); }); $scope.$on('previewPosition', function() { $scope.previewPosition(); }); $scope.$on('publishJob', function() { $scope.publishJob(); }); $scope.previewPosition = function() { $rootScope.$broadcast('previewPosition'); }; $scope.saveDraft = function() { $rootScope.$broadcast('saveDraft'); }; $scope.publishJob = function() { $rootScope.$broadcast('publishJob'); };
相关文章推荐
- AngularJs(一) MVC 模式的应用
- Angularjs输出html
- AngularJS 自定义控件
- angular中的transclude详解
- angular 身份认证问题
- angularjs学习总结一(表达式、指令、模型)
- AngularJS directive指令之require部分
- Angularjs实现分页和分页算法
- angular controller不执行
- webstorm查看angular2的ts源码
- Eclipse上安装angularjs插件
- 25个超有用的 AngularJS Web 开发工具
- AngularJS 的表单验证
- Angularjs中的ng-class
- AngularJs多重视图和路由的使用
- 如何使用 AngularJS 的 ngShow 和 ngHide
- Angularjs Directive(指令)机制
- Angularjs循环二维数组
- AngularJs: Reload page
- 创建 AngularJS 自定义过滤器,带自定义参数