双向绑定ng-repeat中的字符串数组

Dan*_*iel 5 javascript arrays data-binding angularjs angularjs-ng-repeat

我有一个字符串数组,我希望每个字符串都绑定到一个输入.

但是,编辑输入似乎不更新数组(可能是孤立的范围问题?).

建议?

function Ctrl($scope) {
  $scope.fruits = ['Apple', 'Mango', 'Banana', 'Strawberry'];
}
Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-app>
  <div ng-controller="Ctrl">

    <div style="margin: 20px 0" ng-repeat="fruit in fruits">
      <input type="text" ng-model="fruit" />
    </div>

    Fruits: {{fruits}}

  </div>
</div>
Run Code Online (Sandbox Code Playgroud)

cha*_*tfl 14

您需要可以从中获取的数组引用$index.但请注意,如果ng-repeat对索引进行任何过滤,则此操作无效,则基于过滤后的数组而不是原始数据

<div style="margin: 20px 0" ng-repeat="fruit in fruits track by $index">
      <input type="text" ng-model="fruits[$index]" />
</div>
Run Code Online (Sandbox Code Playgroud)

DEMO