如何向AngularJS $resource传递参数

How to pass a param to an AngularJS $resource

本文关键字:参数 resource AngularJS      更新时间:2023-09-26

大多数教程向您展示如何列出资源(例如条目),然后展示如何从列表视图(/entries)链接到单个条目。这很好,因为单个条目对于控制器作用域是可用的,所以您可以像这样连接一个资源:

app.factory('Entry', [ '$resource', function ($resource) {
  $resource('/entries/:id', { id: '@id' });
]});
app.controller('EntryController', [ '$scope', 'Entry', function ($scope, Entry) {
  $scope.entries = Entry.query();
}]);

但是我还没有看到任何例子告诉你如何传递资源id,如果你开始在/entries/1。如何在没有访问entries数组的情况下从视图传递条目id 1 ?

我在一个页面上工作,允许用户与单个entry对象进行交互。没有entries视图,所以我不确定如何让Angular加载单个条目。

从上面的示例中,尝试如下:

var sampleID = $resource('/entries/:id', { id: '@id' });
sampleID.get({id:123}).$promise.then(function(data) {
  //Do something with data
});