您一次又一次地将相同的对象插入到数组中.由于对象总是按引用传递,因此将同一对象的引用推送到数组中.更新对象时,存储在数组中的所有引用都将更改.
尝试创建对象的副本,同时传递给 updateForm()
.controller('homeCtrl', function($scope, $state, formData) { $scope.product = {}; $scope.submitForm = function(product) { if (product.name) { formData.updateForm(angular.copy(product)); $state.go('menu.myOrders'); } else { alert("Please fill out some information for the user"); } }; })