简体   繁体   English

如何使用角度$ broadcast将数据从父级传递到子级控制器?

[英]How to pass data from parent to child controller using angular $broadcast?

I want to pass id argument to child controller using angular $broadcast but with below code i am not able to achieve that task any idea what is implemented wrong ? 我想使用angular $broadcast将id参数传递给子控制器,但是使用下面的代码,我无法实现该任务,任何想法实现错了吗?

ParentCtrl.js ParentCtrl.js

 $scope.deleteXml = function(id, toast) {
     var id = $scope.diagramObj._id;
     var modalInstance = buildModal(null, 'delete');
     modalInstance.result.then(function(user) {
         //$scope.users.push(user);
     }, function() {
         //$log.info('Modal dismissed at: ' + new Date());
     });
     $rootScope.$broadcast('delete-diagram', id);
     $scope.refreshDiagrams;

 }

ChildCtrl.js ChildCtrl.js

$rootScope.$on('delete-diagram', function(event, id) {
                console.log(id);
             });

Your approach is correct. 您的方法是正确的。 However you also need to destroy $rootScope event. 但是,您还需要销毁$ rootScope事件。

Ex. 例如

    $rootScope.$broadcast('myEvent',$scope.data);

   var customeEventListener = $rootScope.$on('myEvent', function(event, data) {

  }
  $scope.$on('$destroy', function() {
        customeEventListener();
  });

or, 要么,

It is better to use $scope.$on as listeners on $scope are destroyed automatically ie as soon as $scope is destroyed. 最好使用$ scope。$ on,因为$ scope上的侦听器会自动销毁,即$ scope被销毁时。

$scope.$on('myEvent', function(event, data) {}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 在角度js中,如何将数据从父控制器传递到子控制器? - In angular js, How do I pass data from a parent controller to a child controller? 无法使用@ViewChild Angular 7将数据从子级传递到父级 - Can't pass data from Child to Parent using @ViewChild Angular 7 如何以角度将多个数据从子组件传递回父组件? - How to pass multiple data back from child to parent component in angular? 如何从Angular2的父级中的dataService接收的数据传递给子级 - How to pass data received from dataService in parent to child in Angular2 如何在angular2+中将动态数据从父级传递给子级 - how to pass dynamic data from parent to child in angular2+ 如何将数据从子级传递到父级:Angular2 - How to pass data from Child to Parent: Angular2 如何将数据从子组件传递到父组件 Angular - How to Pass data from child to parent component Angular 如何在不使用道具的情况下将数据从父组件传递到子组件 - How to pass data from parent to child component without using props 如何在Angular JS的子控制器中访问父控制器数据 - How to access parent controller data inside child controller in angular js 如何将数据从子 angular 应用程序传递给父非角度应用程序? - how to pass data from child angular application to parent non-angular application?
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM