2017-05-03 40 views
1

我使用angularJS和我有一個問題: 我有2 $範圍:AngularJS推兩個列表中的一個

$scope.list1{ 
Object 1, 
Object 2, 
Object 3} 

$scope.list2{ 
Object 4, 
Object 5, 
} 

,我想這樣的結果:

$scope.res{ 
Object 1, 
Object 2, 
Object 3, 
Object 4, 
Object 5} 

我不知道在agularJS使用什麼功能,我沒有使用

angular.merge($scope.res, $scope.list1, $scope.list2) 

,但我得到空的結果 我不硝酸鉀W如果合併是好功能,所以我需要你的幫助

+2

請添加有效的數據。 –

+1

妮娜在說什麼,JavaScript中沒有任何語法。有**數組**'$ scope.list = [obj1,obj2,obj3];'並且有**對象**'$ scope.list1 = {key:obj1,key:obj2};'。你在說清單,所以數組可能?但是你使用大括號,那麼可能是對象呢?但是沒有關鍵/值,所以也許是數組呢?正如現在的問題所讀,你需要的答案是:去閱讀一些基本的JavaScript教程,解釋數組和對象,然後請回來再試一次! (或者你可以編輯你的問題和**添加有效的數據。**) – ippi

+0

看看這個:http://stackoverflow.com/questions/43759566/how-to-merge-two-src-in-one-dst- in-angularjs/43762165#43762165 這是我的問題,我沒有得到任何答案,所以我在這裏寫一個簡單的帖子:) –

回答

2

角方式將使用angular.extend

通過複製從src(多個)對象自己的可枚舉 性質dst擴展目標對象dst。您可以指定多個src 對象。如果要保留原始對象,則可以通過 傳遞一個空對象作爲目標: var object = angular.extend({}, object1, object2)

angular.extend($scope.list1, $scope.list2); 
+0

非常感謝,它適用於我:) –

1

你可以使用數組連接。

例:

$scope.res = $scope.list1.concat($scope.list2); 
+0

非常感謝,它適用於我:) –

+0

這很好! ;) –

0
$scope.list1.forEach(function (selectedItem) { 
     $scope.res.push(selectedItem); 
    }); 
$scope.list2.forEach(function (selectedItem) { 
     $scope.res.push(selectedItem); 
    }); 

試試上面的代碼

+0

如果這裏給出的解決方案適用於您,您可以讓我們知道嗎? – Neha

+0

你能解釋爲什麼他應該嘗試以上嗎?這是如何解決他的問題的,與其他答案相比,這個提議還有什麼? –

+0

我知道這個答案,我從來沒有嘗試過其他的選擇......你太粗魯了 – Neha

相關問題