2014-04-23 20 views
0
{{$$addFunc='isAdd'}} 
<span ng-repeat="listItem in stmt.content"> 
    <span ng-switch on="listItem.meta.category"> 
     <span ng-switch-when="plain" ng-bind-template="{{listItem.content}}"> 
     </span> 
     <span ng-switch-when="link"> 
      <a href="{{listItem.content.lnk}}">{{listItem.content.cap}}</a> 
     </span> 
     <span ng-switch-when="list" ng-init="{{$$addFunc='isInsert'}}">{{$$addFunc}}</span> 
    </span> 
</span> 
{{$$addFunc}} 

如何修改代码以使$$ addFunc为'isInsert'?如何更改ng-repeat中的值并展示ng-repeat

+0

变化''到'' –

+0

你也应该更好地解释。我不知道这里发生了什么 –

回答

0

您不需要{{}}插值来设置变量的值。 ng-init需要一个普通的表达:

ng-init="$$addFunc='isInsert'"


你必须更新$$addFunc的另一个问题是,ng-switch创建child scope。所以,这个范围可以更新$$addFunc,你应该把它移动到一个对象:

$scope.operation = { 
    $$addFunc: 'isAdd' 
}; 

和更新这样的:

<span ng-switch-when="list" ng-init="operation.$$addFunc='isInsert'"> 

这里是一个工作演示:http://plnkr.co/edit/Alypsqu1bSCwCqko4F8m?p=preview