从 get:method 推送到数组
Push to an array from get:method
编辑:谢谢你解决了这个问题。列表()而不是列表。
好傻的问题。
为什么在这样的工厂中推送到数组不起作用?
仅当我在工厂内创建推送功能时它才有效。
var app = angular.module('app', []);
app.factory('registeredUsersService', function() {
var registeredUsers = [];
return {
list: function () {
return registeredUsers;
}
}
});
app.controller('registerController', function ($scope, registeredUsersService) {
registeredUsersService.list.push({username: 'a', password: 'b'});
});
因为列表是函数,不是数组,试试这个:
registeredUsersService.list().push({username: 'a', password: 'b'});
注意括号list()。或者,您也可以将 registeredUsers 公开为服务的 public 属性,在这种情况下是相同的,即
app.factory('registeredUsersService', function() {
return {
registeredUsers = []
}
});
然后像这样使用它:
app.controller('registerController', function ($scope, registeredUsersService) {
registeredUsersService.registeredUsers.push({username: 'a', password: 'b'});
});
尝试 registeredUsersService.list() 而不是 registeredUsersService.list:
app.controller('registerController', function ($scope, registeredUsersService) {
registeredUsersService.list().push({username: 'a', password: 'b'});
});
顺便说一句,我还没有测试过。
如果不行,请创建一个plnkr,以便我可以帮助您
编辑:谢谢你解决了这个问题。列表()而不是列表。 好傻的问题。
为什么在这样的工厂中推送到数组不起作用? 仅当我在工厂内创建推送功能时它才有效。
var app = angular.module('app', []);
app.factory('registeredUsersService', function() {
var registeredUsers = [];
return {
list: function () {
return registeredUsers;
}
}
});
app.controller('registerController', function ($scope, registeredUsersService) {
registeredUsersService.list.push({username: 'a', password: 'b'});
});
因为列表是函数,不是数组,试试这个:
registeredUsersService.list().push({username: 'a', password: 'b'});
注意括号list()。或者,您也可以将 registeredUsers 公开为服务的 public 属性,在这种情况下是相同的,即
app.factory('registeredUsersService', function() {
return {
registeredUsers = []
}
});
然后像这样使用它:
app.controller('registerController', function ($scope, registeredUsersService) {
registeredUsersService.registeredUsers.push({username: 'a', password: 'b'});
});
尝试 registeredUsersService.list() 而不是 registeredUsersService.list:
app.controller('registerController', function ($scope, registeredUsersService) {
registeredUsersService.list().push({username: 'a', password: 'b'});
});
顺便说一句,我还没有测试过。 如果不行,请创建一个plnkr,以便我可以帮助您