Angular ngresource更新方法不是一个函数

我正在使用MEAN堆栈。 我正在尝试向我的$ ngResource添加一个PUT请求,并且出现错误:

TypeError: conService.update is not a function

at m.$scope.joinCon (http://localhost:3000/javascripts/chirpApp-ngresource.js:217:14)

at lb.functionCall (https://ajax.googleapis.com/ajax/libs/angularjs/1.3.16/angular.min.js:200:64)

at Hc.(anonymous function).compile.d.on.f (https://ajax.googleapis.com/ajax/libs/angularjs/1.3.16/angular.min.js:216:394)

at m.$get.m.$eval (https://ajax.googleapis.com/ajax/libs/angularjs/1.3.16/angular.min.js:126:250)

at m.$get.m.$apply (https://ajax.googleapis.com/ajax/libs/angularjs/1.3.16/angular.min.js:126:476)

at HTMLButtonElement.<anonymous> (https://ajax.googleapis.com/ajax/libs/angularjs/1.3.16/angular.min.js:216:446)

at HTMLButtonElement.c (https://ajax.googleapis.com/ajax/libs/angularjs/1.3.16/angular.min.js:32:389)

我的代码

//My factory
app.factory('conService', function ($resource) {return $resource('/api/cons', {'update': { method: 'PUT' }});});

//My update
conService.update({conName:$scope.cons.conName},$scope.cons);};

//My api to get all conventions
.get(function (req, res) {Con.find(function (err, cons) {if (err) { return res.send(500, err); }return res.send(cons);});})

任何人都可以帮我弄清楚我在更新中缺少什么? 谢谢


由于它是一个工厂,因此在使用它之前应该在控制器代码中实例化,如下所示:

var cs = new conService();
cs.update(/*params here*/);

有关更多详细信息,请阅读这些精彩文章:AngularJS:服务vs提供者vs工厂,AngularJS:工厂和服务?

链接地址: http://www.djcxy.com/p/77987.html

上一篇: Angular ngresource update method not a function

下一篇: Angular shared model with multiple controllers