0

我有一个主要视图,其中包括如下部分:

 </div>
  <ng-include src="'/public/xyz.html'"></ng-include>
 </div>
 <div> 
   <span>{{abcd.Name}}</span>
 </div>

部分有一个变量,该变量在单击元素时填充,我需要将该数据从部分传递给父级。该变量在部分的控制器中填充为:

$scope.$parent.abcd = {"Name":"xyz"}

但是当我尝试在主视图上访问它时它不存在。

如何在父级中访问它?

4

1 回答 1

0

该问题的解决方案之一是,我们可以使用 AngularJs 中的 $emit 服务将值从子级发送到父级,如下所述。

在部分:

$scope.abcd = {"Name":"xyz"};//需要指示给父作用域的对象

$scope.$emit("setabcd", [$scope.abcd,....]);

其中“setabcd”=发射器的名称。用户定义的名称。我们可以使用任何唯一的名称。... =要通知父范围的对象或变量。

在控制器中:

$scope.$on("setabcd",function(event,args){$scope.abcd=args[0]});

其中“setabcd”=发射器的名称。名称应与部分中提到的相同。args=从部分发送的项目数组。

于 2014-05-17T05:29:57.707 回答