AngularJS数组正在重置

时间:2015-07-08 16:51:21

标签: javascript arrays angularjs

有点新的angularjs。我有以下代码,只是想知道是否有人不能告诉我为什么我的值不会被保留在相应的数组中

<script type="text/javascript">
'use strict';
var app = angular.module('app', ['appControllers']);
"use strict";
var appControllers = angular.module('app', []);
appControllers.controller('personController', ['$scope', '$http', function ($scope, $http) {

$scope.responses = [];
$scope.coaches = [];
$scope.athletes = [];
$scope.staff = [];

$scope.addCoach = function() {
var coach = $scope.coach;
$scope.coach = {}; // Do this to clean up the form fields
$scope.coaches.push(coach);
//$scope.responses.push(coaches); 
};

.....

$scope.addContact = function ($event) {

$event.preventDefault();
$scope.responses.push(coaches); 
console.log("inside this method");

}

所以我选择已添加的教练列表,并尝试将它们进一步推送到响应数组。每次都是点击addContact的这个功能,或者只是从原始函数推送它,它将respond数组返回为空。任何见解?

2 个答案:

答案 0 :(得分:3)

您尝试推送coaches而不是$scope.coaches

所以这就是你应该写的:

$scope.responses.push($scope.coaches); 

答案 1 :(得分:2)

您没有使用名称coaches定义变量。只有$ scope.coaches,您应该在$scope.responses.push(coaches);

使用