2016-06-28 89 views
0

我有2个控制器基于在一个控制器中采取的操作,我需要更新另一个中的数据。 这是我的代码控制器中的更改不反映在视图中

控制器1

$rootScope.$broadcast('PackageIns', $scope.pkgtoLoad); 

控制器2

$rootScope.$on('PackageIns', function (event, args) { 
     vm.order.Lines = args; 
     console.log(vm.order.Lines) 
    }) 

vm.order.Lines是objects.The问题的阵列是阵列vm.order.Lines被得到更新,但视图不反射那。 但是,如果我把这样的代码vm.order.Lines= [];,那么视图将被反映和视图将清除所有的行。

编辑使用指令渲染

查看

<tbody tp-order-line ng-repeat="orderLine in vm.order.Lines track by vm.itemTracker(Line)" lineitem="Line"> 

林。 内部指令使用的模板是

<td>{{vm.orderLine.Name}}</td> 
<td>{{vm.orderLine.Description}}</td> 
+0

你能检查什么是形式参数的类型的解决? –

+0

参数也是对象的数组。 –

+0

您能否显示视图的代码? –

回答

0

我发现这是加入timeout.This工作对我来说

vm.order.Lines = []; 
    $timeout(function() { 
    vm.order.Lines = args; 
    }, 100); 
相关问题