Restangular - 如何获得请求的简单结果(未包装)

时间:2015-08-27 15:49:32

标签: javascript angularjs restangular ngresource

我正在尝试使用mgonto的Restangular从REST api获取一些数据。

// Restangular returns promises
Restangular.all('users').getList()  // GET: /users
.then(function(users) {
  // returns a list of users
  $scope.user = users[0]; // first Restangular obj in list: { id: 123 }
})

// Later in the code...

// Restangular objects are self-aware and know how to make their own RESTful requests
$scope.user.getList('cars');  // GET: /users/123/cars

没关系,这很有效,但是Promises回调中返回的所有结果都有Restangular添加的一些方法和属性(这就是你可以做的.getList(" cars")用户)。

我想要的是在没有所有Restangular方法的情况下仅检索用户的数据(name,id ...)。只是一个简单的JS对象。

我无法在文档中找到任何方法。每次我在返回的用户上使用方法时,它总是返回一个包含Restangular方法的包装对象。

1 个答案:

答案 0 :(得分:6)

我猜你正在寻找' plain()' (Restangular.stripRestangular(elem)的别名)。

  

plain():返回从服务器接收的plain元素   Restangular中的任何增强方法。它是调用的别名   Restangular.stripRestangular(ELEM)

它删除所有restangular方法并返回服务器返回的普通对象。

有关详细信息,请参阅以下链接:

https://github.com/mgonto/restangular#element-methods

以下小提琴可能有所帮助:

Fiddle :: http://plnkr.co/edit/oMFnYM4HkaFK3biscpTo?p=preview