AngularJS停止更新范围变量

时间:2015-05-27 10:44:07

标签: angularjs

我有一个$ scope.taskList,它包含许多任务对象。我有一个表格,我可以更新任务。首先我选择任务然后将其数据加载到表单。进行更改并在按下列表中的保存按钮对象后进行更新。一切都很好看。但是在保存之后,如果我继续更改表单中的值,则更新时会更新数据(无需单击保存)

我的提交功能如下:

$scope.submitTaskForm = function() {
        if ($scope.createTaskForm.$valid) {
            $http({
                method: "post",
                url: '/admin/json/manage/task',
                headers: {'Content-Type': 'application/x-www-form-urlencoded'},
                data: $scope.task
            }).success(function (response) {

                if (response.status == 'success') {
                    var index = 0,
                        updated = false;
                    $scope.task = response.task;
                    while ((index < $scope.taskList.length) && (updated == false)) {
                        if ($scope.taskList[index].id == $scope.task.id) {
                            $scope.taskList[index] = $scope.task;
                            updated = true;
                        }
                        index++;
                    }
                    if (updated == false) {
                        $scope.taskList.push($scope.task);
                        $scope.itemAdded();
                    }
                    alert('Successfully saved');
                } else {
                    alert(response.message);
                }
            });
        }
    };

我确定这是因为这行$scope.taskList[index] = $scope.task;但我不知道如何解决它

0 个答案:

没有答案