6

誰かがこの小さな拘束力のある混乱で私を助けてくれませんか. タスクのリストを生成しようとしています

ここに私の TaskController のモデル定義があります:

angular.module('yeomantestApp')
  .controller 'TaskController', ($scope) ->
    $scope.currentTask
    $scope.tasks = [
        {
            id: 1
            name: 'write test'
            elapsedTime: 15
        },
        {
            id: 2
            name: 'run test'
            elapsedTime: 32
        },
        {
            id: 3
            name: 'write code'
            elapsedTime: 22
        }
    ]

そこで、次のビューでモデルをレンダリングしたいと思います。ビューはタスク配列を反復処理し、各タスクのラジオ ボタンのリストを作成します。私の問題は、 currentTask へのモデルバインディングが何らかの形で機能していないことです。タスクを選択すると、currentTask モデル エントリが更新されません。しかし、チュートリアルとドキュメントによると、そうすべきです。

<div class="hero-unit" ng-controller="TaskController">
    <h1>Tasks</h1>
    <h2>current {{currentTask}}</h2>
    <form name="taskForm">
        <div ng-repeat="task in tasks">
            <input type="radio" name="taskGroup" ng-model="currentTask" value="{{task.id}}">{{task.name}} {{task.elapsedTime}}
        </div>
    </form>
</div>
4

1 に答える 1

12

ng-model属性をに変更するとng-model="$parent.currentTask"、問題が解決するはずです。

これが jsFiddle です: http://jsfiddle.net/dp3xq/8/

于 2012-11-02T16:32:37.757 に答える