2015-06-17 3 views
2

У меня есть этот массив:Как подтолкнуть массив в массив объектов с использованием AngularJs

$scope.arrayList=[{FirstName:"",LastName:""}]; 
$scope.Address=[{address:"",PhonNumber:""}]; 

, и я хочу, чтобы подтолкнуть этот другой $scope.Address массив в first(index) объект и результат должен быть таким:

$scope.arrayList=[{FirstName:"",LastName:"",$scope.Address}]; 

Когда я попытался оттолкнуть адрес в массив, он создает новый объект, поэтому я попытался это:

$scope.arrayList[0].push($scope.Address); 

Но он показывает эту ошибку: «[0] не определено»

+0

Как вы пытались сделать это? Добавьте код своей попытки. – Peter

+0

http://jsfiddle.net/arunpjohny/2c0q7pwp/1/ - отлично выглядит –

+0

Зачем вы это делаете? Зачем хранить $ scope.Address в $ scope.arrayList. Не можете ли вы просто сохранить массив? – nikhil

ответ

4

Я думаю, что вы ищете для этого

$scope.arrayList[0].Address= $scope.Address; 

вы не можете вставить массив в массив объект без указания пары ключ/значение.

Предполагая, что $scope.Address хранит массив адресов для $scope.arrayList[0].

Если это не так, и вы хотите, чтобы отобразить каждый массив по индексу, то попробуйте следующее:

$scope.arrayList[0].Address= $scope.Address[0]; 
1

Вы не можете вставлять объект в массив. $scope.arrayList[0] - объект (человек), а не массив (список адресов). Вы должны определить массив как свойство В этом объекте.

$scope.arrayList[0].addresses=[{address:"",PhonNumber:""}]; 

или определить список адресов с объектом лица и использования толчке

$scope.arrayList=[{FirstName:"",LastName:"", addresses=[]}]; 
$scope.arrayList[0].addresses.push({address:"",PhonNumber:""});