2

その下にボタンがあるテキストフィールドのリストがあります。AngularJS を使用して、そのリストにテキスト フィールドを動的に追加できます。

デフォルトでは、テキスト フィールドの値は空です。しかし、そのテキスト フィールドの値を更新したらすぐに、リスト アイテムの位置を並べ替えたいと思います。しかし、私がそれを行うと、orderByトリガーされません。

どうすればこれを実現できますか?

ここに簡単なデモがあります: http://jsfiddle.net/fqnKt/214/

4

2 に答える 2

3

例が間違っている理由を具体的に書き留めたかっただけです (orderBy ディレクティブを使用していても同じ問題が発生したため)。

使用禁止

track by $index

あなたのng-repeatで

于 2016-01-25T08:59:42.847 に答える
2

これがあなたが望むものだと思います:

<div ng-app="myApp">
    <div ng-controller="MyCtrl">
        <ul>
            <li ng-repeat="item in items | orderBy:'name'">
                <input type="text" ng-model="item.name" /> {{item.name}}
            </li>
        </ul>
        <input ng-model="newItem" type="text"></input>
        <button ng-click="add(newItem)">Add</button>
    </div>
</div>

実施例

于 2014-09-26T20:45:16.693 に答える