2016-05-22 35 views
1
Please consider the small angularJs code snippet below. 

$scope.myArray = []; 
function sampleMethod(){ 
    $scope.myArray.push({ 
     name: $scope.name, 
     age: $scope.age 
    }); 
    console.log($scope.myArray.name); 
}; 

在這裏,我試圖讓範圍值名字和年齡,並將其加載到控制器內的範圍數組。但上面的程序什麼都不打印。我們可以訪問並將範圍值從控制器提供給數組嗎?如果不可能,我該如何正確地做到這一點?負載範圍值到一個數組不工作在angularjs

+0

聲明該函數'sampleMethod'但你還沒有作出一個函數調用。所以會有什麼在控制檯上 –

回答

0

嘗試這樣的:

var app = angular.module('app', []); 
 
app.controller('MainController', function($scope) { 
 
    $scope.name = 'Cuco Pérez'; 
 
    $scope.age = 37; 
 
    $scope.myArray = []; 
 

 
    (function sampleMethod() { 
 
     $scope.myArray.push({ 
 
      name: $scope.name, 
 
      age: $scope.age 
 
     }); 
 
     console.log($scope.myArray[0].name); 
 
    })(); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> 
 

 
<div ng-app="app"> 
 
    <div ng-controller="MainController"> 
 
    <h1>Hi, my name is: {{ myArray[0].name }}</h1>  
 
    </div> 
 
</div>

0

您的$ scope.myArray是一個數組,而不是一個對象。

這樣做,$ scope.myArray [0] .name它應該工作。