您好,登錄后才能下訂單哦!
Restangular是一種AngularJS服務,可以使用最少的客戶端代碼簡化常見的GET,POST,DELETE和UPDATE請求。它適用于任何從RESTful API中獲取數據的WebApp。
可以從bower和npm包管理器中獲取restangular,初次嘗試也可以使用cdn
<script type="text/javascript" src="http://cdnjs.cloudflare.com/ajax/libs/restangular/1.5.1/restangular.js"></script> <script type="text/javascript" src="http://cdnjs.cloudflare.com/ajax/libs/restangular/1.5.1/restangular.min.js"></script>
第一種是未壓縮版,第二種是壓縮版,相比前者壓縮版體積更小。
// Add Restangular as a dependency to your app angular.module('your-app', ['restangular']);// Inject Restangular into your controller angular.module('your-app').controller('MainCtrl', function($scope, Restangular) { // ...});
這里演示了如何加載restangular。
注入rest的時候要用小寫,作為依賴的時候要大寫,不然會報錯。
// First way of creating a Restangular object. Just saying the base URL var baseAccounts = Restangular.all('accounts');// This will query /accounts and return a promise. baseAccounts.getList().then(function(accounts) { $scope.allAccounts = accounts; });
第一行代碼聲明了基礎的路由地址,.getList()用于通過路由/accounts發起一次查詢請求。
var newAccount = {name: "Gonto's account"};// POST /accounts baseAccounts.post(newAccount);
向/accounts地址發送post請求,發送的數據為newAccount對象
// Just ONE GET to /accounts/123/buildings/456 Restangular.one('accounts', 123).one('buildings', 456).get()
one方法為向URL中追加參數,第一個參數是參數名,第二個是參數值,最終的get()決定了請求為get方式還是post方式。
當然one方法也可以不帶參數名,比如像我項目中就有這么一行代碼
function delete(id){ Restangular.all('service').one(id).remove(); }
這里請求為delete,向service發送刪除請求,刪除的id為XXX,最終形成的路由為
/service/`id`
暫時常用的是這些,如果有其他方式會另行補充。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。