W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
ngResource 這個(gè)是 ng 官方提供的一個(gè)附加模塊。附加的意思就是,如果你打算用它,那么你需要引入一人單獨(dú)的 js 文件,然后在聲明“根模塊”時(shí)注明依賴的 ngResource 模塊,接著就可以使用它提供的 $resource 服務(wù)了。完整的過程形如:
<!DOCTYPE html> <html ng-app="Demo"> <head> <meta charset="utf-8" /> <title>AngularJS</title> <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/angularjs/1.0.3/angular.min.js" rel="external nofollow" ></script> <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/angularjs/1.0.3/angular-resource.js" rel="external nofollow" ></script> </head> <body> <div ng-controller="TestCtrl"></div> <script type="text/javascript" charset="utf-8"> var app = angular.module('Demo', ['ngResource'], angular.noop); app.controller('TestCtrl', function($scope, $resource){ console.log($resource); }); </script> </body> </html>
$resource 服務(wù),整體上來說,比較像是使用類似 ORM 的方式來包裝了 AJAX 調(diào)用。區(qū)別就是 ORM 是操作數(shù)據(jù)庫(kù),即拼出 SQL 語句之后,作 execute 方法調(diào)用。而 $resource 的方式是構(gòu)造出 AJAX 請(qǐng)求,然后發(fā)出請(qǐng)求。同時(shí),AJAX 請(qǐng)求是需要回調(diào)處理的,這方面, $resource的機(jī)制可以使你在一些時(shí)候省掉回調(diào)處理,當(dāng)然,是否作回調(diào)處理在于業(yè)務(wù)情形及容錯(cuò)需求了。
使用上 $resource 分成了“類”與“實(shí)例”這兩個(gè)層面。一般地,類的方法調(diào)用就是直觀的調(diào)用形式,通常會(huì)返回一個(gè)對(duì)象,這個(gè)對(duì)象即為“實(shí)例”。
“實(shí)例”貫穿整個(gè)服務(wù)的使用過程?!皩?shí)例”的數(shù)據(jù)是填充方式,即因?yàn)楫惒疥P(guān)系,回調(diào)函數(shù)沒有執(zhí)行時(shí),實(shí)例已經(jīng)存在,只是可能它還沒有相關(guān)數(shù)據(jù),回調(diào)執(zhí)行之后,相關(guān)數(shù)據(jù)被填充到實(shí)例對(duì)象當(dāng)中。實(shí)例的方法一般就是在類方法名前加一個(gè) $ ,調(diào)用上,根據(jù)定義,實(shí)例數(shù)據(jù)可能會(huì)做一些自動(dòng)的參數(shù)填充,這點(diǎn)是區(qū)別實(shí)例與類的調(diào)用上的不同。
好吧,上面這些話可能需要在看了接下來的內(nèi)容之后再回過來理解。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: