存储ng-repeat指令的第一个元素

我是Angular的新手……

我有一个ng-repeat指令,我想在“全局”变量中存储一个answer属性。

我想要像这样

 var buffer = answer.discussionId; 
if(buffer != answer.discussion){ //do something buffer = answer.discussionId; }

谢谢

我相信会有一个黑客来做这件事。 但你永远不应该有角度地做这件事。 在你的控制器中做!

使用angular,不鼓励在视图中执行条件逻辑。 您应该通过控制器/模型或通过使用指令来进行任何数据存储。

http://docs.angularjs.org/guide/directive

如果我正确理解你的问题,这将是“有角度的方式”来做到这一点:

您需要创建一个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); }]); 

有关更多信息, 请单击此处