存储ng-repeat指令的第一个元素
我是Angular的新手……
我有一个ng-repeat
指令,我想在“全局”变量中存储一个answer
属性。
我想要像这样
var buffer = answer.discussionId; if(buffer != answer.discussion){ //do something buffer = answer.discussionId; }
谢谢
我相信会有一个黑客来做这件事。 但你永远不应该有角度地做这件事。 在你的控制器中做!
使用angular,不鼓励在视图中执行条件逻辑。 您应该通过控制器/模型或通过使用指令来进行任何数据存储。
如果我正确理解你的问题,这将是“有角度的方式”来做到这一点:
您需要创建一个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); }]);
有关更多信息, 请单击此处