AngularJS$资源类与实例方法
我为“仪表板”定义了一个工厂: 为了更新仪表板,我需要使用类方法:AngularJS$资源类与实例方法,angularjs,angularjs-resource,angularjs-factory,Angularjs,Angularjs Resource,Angularjs Factory,我为“仪表板”定义了一个工厂: 为了更新仪表板,我需要使用类方法: $scope.dashboard = Dashboard.get({ id: 1234 }); Dashboard.update({ id: $scope.dashboard.id }, $scope.dashboard); 相反,是否有一种方法可以将其称为特定仪表板的实例方法 $scope.dashboard = Dashboard.get({id: 1234 }); $scope.dashboard.update();
$scope.dashboard = Dashboard.get({ id: 1234 });
Dashboard.update({ id: $scope.dashboard.id }, $scope.dashboard);
相反,是否有一种方法可以将其称为特定仪表板的实例方法
$scope.dashboard = Dashboard.get({id: 1234 });
$scope.dashboard.update();
看看这本书
大约走了一半:
可以使用以下参数调用类对象或实例对象上的操作方法:
HTTP获取“类”操作:Resource.action([parameters]、[success]、[error])
非获取“类”操作:Resource.action([parameters]、postData、[success]、[error])
非获取实例操作:实例.$action([参数],[成功],[错误])
以及他们页面中的一个示例:
var User = $resource('/user/:userId', {userId:'@id'});
var user = User.get({userId:123}, function() {
user.abc = true;
user.$save();
});
谢谢,我在发帖前看了文件。它们不指定如何定义非GET实例操作。我尝试使用非GET实例操作(如问题所示),但此语法不起作用。您尝试了(在代码中)
dashboard.$save
和/或dashboard.$update
?什么不起作用-它抛出了一个错误?哦,我错过了更新前的$符号。所以,$scope.dashboard.$update()
有效,而我正在尝试$scope.dashboard.update()
。是否有类似实例操作的选项:instance.$action(postData,[success],[error])。例如/users/:id/upload
var User = $resource('/user/:userId', {userId:'@id'});
var user = User.get({userId:123}, function() {
user.abc = true;
user.$save();
});