0
でOBJでいくつかのプロパティを削除するには、私のデータです:角度:ここ角度
$scope.datas = {
"name": "000",
"id" : 1,
"type" : "record"
"children": [
{name:111,id:2,children:[
{name:444,id:5,children:[]}
]}
{name:222,id:3,children:[]}
{name:333,id:4,children:[]}
]
}
、これは私の削除機能である:私は指定されたIDを見つける必要がある
deleteNode = (node,id) ->
if node.id == id
$timeout ->
console.log 'findNode',node
node = null
return
if node.children
for rows,i in node.children
if rows.id == id
$timeout ->
console.log 'findNode',rows
rows = null
else
deleteNode(rows,id)
私の$scope.datas
この機能を実行した後deleteNode($scope.datas,5)
実際に正しいオブジェクトが見つかりましたが、$scope.datas
は変更されません。なぜですか?答えを見つけ
、私は
deleteNode = (node,id) ->
if node.id == id
$timeout ->
node = {}
return
if node.children
for rows,i in node.children
if rows.id == id
node.children.splice(i,1)
return
else
deleteNode(rows,id)