我是Angular的新手..
我有ng-repeat
指令,我想将answer
属性中的一个存储在“全局”变量中。
我想要像这样
var buffer = answer.discussionId;
<div ng-repeat="answer in answers">
if(buffer != answer.discussion){
//do something
buffer = answer.discussionId;
}
</div>
谢谢
答案 0 :(得分:2)
我相信会有一个黑客来做这件事。但你永远不应该有角度地做这件事。在您的控制器中执行此操作!
答案 1 :(得分:1)
使用angular,不鼓励在视图中执行条件逻辑。您应该通过控制器/模型或通过使用指令来进行任何数据存储。
答案 2 :(得分:1)
如果我正确地理解了你的问题,这将是“有角度的方式”:
您需要创建watch
以查找规格值发生变化的时间。
app.controller('myCtrl',['$scope',function($scope){
"use strict";
$scope.buffer ="";
$scope.answers = [{ /*some object we do not know*/ }];
$scope.$watch("answers",function(newValue, oldValue, scope){
var result =newValue.filter(function(answer){
return ($scope.buffer !== answer.discussion);
});
if (result.length > 0){
$scope.buffer = result[0].discussionId;
}
},true);
}]);
有关详细信息,请观看click here