Angularjs 自定義服務的三種方式(推薦)
AngularJS簡介:
AngularJS 通過新的屬性和表達式擴展了 HTML。
AngularJS 可以構建一個單一頁面應用程序(SPAs:Single Page Applications)。
AngularJS 學習起來非常簡單。
angularjs 中可通過三種($provider,$factory,$service)方式自定義服務,以下是不同的實現(xiàn)形式:
// 定義module , module中注入$provide var starterApp = angular.module('starter.controllers', [],function($provide){ // 第一種方式:使用provide的provider自定義服務 $provide.provider('getUserInfoService', function(){ this.$get = function(){ var userInfo = [{ 'userName':'張三0', 'userNick':'小花0', 'age':25 },{ 'userName':'張三1', 'userNick':'小花1', 'age':26 }]; return userInfo; } }); $provide.factory('',function(){}); $provide.service('',function(){}); }); //第二種方式 (module 的 config 方法中注入 $provide) starterApp.config(['$provide',function($provide) { // 使用provide的provider自定義服務(返回對象,字符串,服務,且必須通過$get方法返回) $provide.provider('getUserAddressService', function(){ var _userAddress = ''; var service = {}; this.$get = function(){ service.setAddress = function (userAddress){ _userAddress = userAddress; } service.getAddress = function (){ return _userAddress; } return service; } }); // 使用provide的factory自定義服務(返回對象,服務,字符串) $provide.factory('serviceName1', ['$http', function($http){ // var service = {}; // service.getName = function (){ // return '張三'; // } // return service; // return "啊颯颯大"; }]); // 使用provide的service自定義服務(返回對象,服務) $provide.service('serviceName2', ['$http', function($http){ // return { // 'name':'aa' // }; //可直接通過this定義方法 this.getName = function (){ return '張三'; } }]) }]); //第三種方式(module 的 provider、service、factory 方法 推薦第三種) starterApp.provider('serviceName3',function(){ this.$get = function (){ return '直接通過module的provider方法定義服務'; } }); starterApp.factory('serviceName4',function(){ return '直接通過module的factory方法定義服務'; }); starterApp.service('serviceName5',function(){ return { 'message':'直接通過module的service方法定義服務' } });
以上所述是小編給大家介紹的Angularjs 自定義服務的三種方式小結,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!
相關文章
Angular2從搭建環(huán)境到開發(fā)步驟詳解
本文的內容主要是想幫助那些想學習Angular2的朋友們,因為我自己在玩Angular2時碰到了不少坑,而且Angular2語法一直處于變化中,讓人很頭疼。不過也怪不了Anguar2,因為它現(xiàn)在是處于并長期處于alpha階段,下面就通過本文來學習Angular2的搭建環(huán)境和開發(fā)吧。2016-10-10AngularJs Understanding the Model Component
本文主要介紹AngularJs Understanding the Model Component的內容,這里整理了相關資料,并詳細講解了這部分知識,有興趣的小伙伴可以參考下2016-09-09使用Angular CLI進行Build(構建)和Serve詳解
這篇文章主要介紹了使用Angular CLI進行Build(構建)和Serve詳解,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-03-03通過AngularJS實現(xiàn)圖片上傳及縮略圖展示示例
本篇文章主要介紹了通過AngularJS實現(xiàn)圖片上傳及縮略圖展示,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-01-01使用AngularJS創(chuàng)建單頁應用的編程指引
這篇文章主要介紹了使用AngularJS創(chuàng)建單頁應用的編程指引,AngularJS是一款高人氣的JavaScript庫,需要的朋友可以參考下2015-06-06