Angularjs - 意外的执行顺序

时间:2014-06-26 08:35:37

标签: javascript angularjs

我有一个奇怪的问题,只会导致IE(任何版本)但Chrome不存在问题。

我有一个名为" items"在一个名为" doc"的对象中 - 用户可以编辑实际删除项目的项目,但将内容添加回文本框,以便用户在进行一些更改后可以再次添加。

编辑功能的代码是:

$scope.editItem = function(index) {
    console.log($scope.doc); //debugging
    item = $scope.doc.items[index];
    $scope.content = item.data
    $scope.doc.items.splice(index,1);
};

从3个项目开始,在调试过程中,我注意到console.log($scope.doc)(第2行)输出的文档只包含2个项目。这是在阵列拼接之前。我希望它可以说有三个项目。

我还检查过索引是否从视图中正确传递,因此这不是问题区域。

为什么会这样?

1 个答案:

答案 0 :(得分:0)

可能是console.log没有立即打印对象(可能会保存引用并稍后打印)。

尝试将console.log($scope.doc);替换为console.log($scope.doc.length);或类似console.log(JSON.stringify($scope.doc));

的内容