Angularjs 自定义服务的三种方式(推荐)


Posted in Javascript onAugust 02, 2016

AngularJS简介:

Angularjs 自定义服务的三种方式(推荐)

AngularJS 通过新的属性和表达式扩展了 HTML。

AngularJS 可以构建一个单一页面应用程序(SPAs:Single Page Applications)。

AngularJS 学习起来非常简单。

angularjs 中可通过三种($provider,$factory,$service)方式自定义服务,以下是不同的实现形式:

// 定义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 自定义服务的三种方式小结,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
百度Popup.js弹出框进化版 拖拽小框架发布 兼容IE6/7/8,Firefox,Chrome
Apr 13 Javascript
jquery中:input和input的区别分析
Jul 13 Javascript
验证码在IE中不刷新而谷歌等浏览器正常的解决方案
Mar 18 Javascript
JS取得绝对路径的实现代码
Jan 16 Javascript
JS实现从表格中动态删除指定行的方法
Mar 31 Javascript
简介JavaScript中用于处理正切的Math.tan()方法
Jun 15 Javascript
举例讲解AngularJS中的模块
Jun 17 Javascript
AngularJS教程之环境设置
Aug 16 Javascript
form表单转Json提交的方法(推荐)
Sep 23 Javascript
js HTML5多媒体影音播放
Oct 17 Javascript
Node.js测试中的Mock文件系统详解
Nov 21 Javascript
详解Node.js项目APM监控之New Relic
May 12 Javascript
AngularJS基础 ng-keypress 指令简单示例
Aug 02 #Javascript
javascript将中国数字格式转换成欧式数字格式的简单实例
Aug 02 #Javascript
AngularJS基础 ng-keydown 指令简单示例
Aug 02 #Javascript
AngularJs自定义服务之实现签名和加密
Aug 02 #Javascript
浅谈Cookie的生命周期问题
Aug 02 #Javascript
jQuery实现的兼容性浮动层示例
Aug 02 #Javascript
AngularJS基础 ng-init 指令简单示例
Aug 02 #Javascript
You might like
用cookies来跟踪识别用户
2006/10/09 PHP
UCenter中的一个可逆加密函数authcode函数代码
2010/07/20 PHP
简单的PHP多图上传小程序代码
2011/07/17 PHP
Thinkphp中的curd应用实用要点
2015/01/04 PHP
PHP实现将浏览历史页面网址保存到cookie的方法
2015/01/26 PHP
php微信公众号js-sdk开发应用
2016/11/28 PHP
php使用Jpgraph创建折线图效果示例
2017/02/15 PHP
PHP上传文件及图片到七牛的方法
2018/07/25 PHP
Laravel框架实现多数据库连接操作详解
2019/07/12 PHP
Nigma vs Liquid BO3 第一场2.13
2021/03/10 DOTA
Z-Blog中用到的js代码
2007/03/15 Javascript
使用ExtJS技术实现的拖动树结点
2010/08/05 Javascript
javascript模拟评分控件实现方法
2015/05/13 Javascript
详解jQuery移动页面开发中的ui-grid网格布局使用
2015/12/03 Javascript
js前端实现多图图片上传预览的两个方法(推荐)
2016/11/18 Javascript
canvas基础绘制-绚丽倒计时的实例
2017/09/17 Javascript
webpack打包并将文件加载到指定的位置方法
2018/02/22 Javascript
jquery轮播图插件使用方法详解
2020/07/31 jQuery
vue设置默认首页的操作
2020/08/12 Javascript
python实现多线程的两种方式
2016/05/22 Python
python发送邮件实例分享
2017/07/28 Python
python pandas.DataFrame选取、修改数据最好用.loc,.iloc,.ix实现
2018/06/11 Python
Python实现的序列化和反序列化二叉树算法示例
2019/03/02 Python
python实现远程控制电脑
2019/05/23 Python
python 反编译exe文件为py文件的实例代码
2019/06/27 Python
python之pexpect实现自动交互的例子
2019/07/25 Python
Python 使用xlwt模块将多行多列数据循环写入excel文档的操作
2020/11/10 Python
详解CSS透明opacity和IE各版本透明度滤镜filter的最准确用法
2016/12/20 HTML / CSS
英国在线房屋中介网站:Yopa
2018/01/09 全球购物
Groupon荷兰官方网站:高达70%的折扣
2019/11/01 全球购物
《愚公移山》教学反思
2014/02/20 职场文书
小学生暑假家长评语
2014/04/17 职场文书
中学社团活动总结
2015/05/07 职场文书
月考总结与反思
2015/10/22 职场文书
python实战之用emoji表情生成文字
2021/05/08 Python
Python中glob库实现文件名的匹配
2021/06/18 Python