angular 获取 ng repeat inside 指令值的方法

angular way of getting value of ng repeat inside directive

我想要一个由 ng-repeat 生成的列表。 每个列表项都包含一个名称和一个包含数字的输入字段。

我想使用指令更改此数字,但我不知道如何从指令内部处理此值。

一个工作的 plunkr 在这里: http://plnkr.co/edit/BXsTqqETkGkgvRxGyWi2?p=preview

到目前为止,这里是指令:

app.directive('keyCommand', function () {
return {
restrict: 'A',
link: function (scope, element, attrs) {
  element.on("keydown", function(event){
    element.after("!");
    //on arrow right
    if (event.which==39){
      //HERE IS THE PROBLEM!!!! HOW TO CHANGE THE CURRENT AMOUNT?
      item.amount++;
    } 
    });
  }
};      
});

我对 angular 很陌生(很明显),任何正确方向的提示都会很棒。我试过使用 required:"ngmodel",或将一些东西传递给函数,但没有任何效果。

非常感谢 马库斯

只需将其更改为:

scope.$apply(function(){
  scope.item.amount++;
});

http://plnkr.co/edit/brRDm8eGttcr8yUPSEyY?p=preview

您也可以使用@inorganik 建议:(如果这是您想要的行为)

<input type="text" ng-model="item.amount" ng-keyup="item.amount=item.amount+1" />{{item.name}}