AngularJS內的服務

2021-07-31 08:24:46 字數 2089 閱讀 5068

通過之前講解的一些angularjs裡面的一些功能j

今天就來說下我用angulaerjs裡面的服務的一些感觸和運用。

angularjs中你可以自己建立自己的服務,也可以使用angularjs裡面的內建服務。

在angularjs中,服務是乙個函式或物件,可在你的angularjs 應用中使用。

有個 $location

服務,它可以返回當前頁面的 url 位址。

例子:

$scope.myurl = $location.absurl();

});注意 

$location

服務是作為乙個引數傳遞到 controller 中。如果要使用它,需要在 controller 中定義。

在很多服務中,比如 $location 服務,它可以使用 dom 中存在的物件,類似 window.location 物件,但 window.location 物件在 angularjs 應用中有一定的侷限性。

view檢視~專門用於資料的展示和提取

controller控制器,主要用於資料的掛載【資料從**來?】

|-- 自定義服務:用於從後端介面獲取資料,然後將資料掛載到控制器中

model資料模型:應用中要使用的各種資料,一般從後端獲取之後儲存在控制器的變數中

angularjs 會一直監控應用,處理事件變化, angularjs 使用$location服務比使用window.location物件更好。

$http服務是angularjs應用中最常用的服務。服務向伺服器傳送請求,應用響應伺服器傳送過來的資料。

例項:使用$http服務向伺服器請求資料:

angularjs $timeout服務對應了 js window.settimeout函式

例項:兩秒後顯示資訊:

$scope.name = "hello world!";初始化的name的值

$timeout(function () , 2000);

});

angularjs $interval 服務對應了js window.setinterval函式

例項:每一秒顯示資訊:

$scope.thetime = new date();這個可以不要但是顯示之前會會有1秒的延遲才會出現

$interval(function () , 1000);

});

建立自定義服務的三種方式:

第一種實現方式:factory模式

第一種實現方式,以其簡潔的使用特色而流行於自定義服務行列

在處理返回資料的時候,可以返回字面量、陣列、物件、複雜物件等等各種資料

極大的滿足了我們專案的需要,所以使用較多,需要掌握!

例項:a.controller("my",["$scope","diyi",function ($scope,a1) ])

a.factory("diyi",function () )

第二種實現方式,以其規範的返回資料而流行與自定義服務行列

service方式,只能返回物件,在某些專案組中,為了規範服務返回的資料~也就是強制指定

必須返回物件資料,才能正常解析,避免了出現大量的各種格式的資料:由於返回資料的標準化而流行!

a.controller("my",["$scope","dier",function ($scope,a2) ])

a.service("dier",function () )

第三種實現方式,要求處理的過程中必須通過this.$get()函式進行返回資料的處理

這種方式在angular自己的內建服務和框架中使用較多,但是不推薦在專案開發中使用

因為操作的複雜性和**的可讀性無形中讓開發人員掌握有一定的難度

a.controller("my",["$scope","disan",function ($scope,a3)])

a.provider("disan",function () )

angularjs中的 sompile服務

compile服務 是angularjs裡比較重要但又很少手動呼叫的服務,通常 我們使用的angularjs指令 都是angularjs 自動編譯完成的,但有時我們可能需要手動編譯,比如 我們需要往現有的dom結構裡新增html 增加一列 li,這是就需要用到 compile了。compile 用於...

AngularJs服務 http請求

http 本質是對xmlhttprequest物件封裝 開啟乙個鏈結 介面方式 soap restful 傳遞的資料可以是 key val key val 形式,這種形式叫formdata 當請求資料型別不一樣,後端在接收的時採取方法也不一樣 假如上述方式以php為例可以使用 post接收 requ...

angularjs服務簡單介紹

3種建立自定義服務的方式。factory service provider 大家應該知道,angularjs是後台人員在工作之餘發明的,他主要應用了後台早就存在的分層思想。所以我們得了解下分層的作用,如果你是前端人員不了解什麼是分層,那麼你最好問問你後台的小夥伴。dao層 就是model層,在後台時...