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 相关文章推荐
Javascript 表单之间的数据传递代码
Dec 04 Javascript
javascript 全角转换实现代码
Jul 17 Javascript
javascript 获取HTML DOM父、子、临近节点
Jun 16 Javascript
js密码强度校验
Nov 10 Javascript
javascript点击按钮实现隐藏显示切换效果
Feb 03 Javascript
实例讲解使用原生JavaScript处理AJAX请求的方法
May 10 Javascript
jQuery 操作input中radio的技巧
Jul 18 Javascript
微信小程序 slider的简单实例
Apr 19 Javascript
JavaScript简单拖拽效果(1)
May 17 Javascript
用Vue.js在浏览器中实现裁剪图像功能
Jun 18 Javascript
使用axios请求接口,几种content-type的区别详解
Oct 29 Javascript
基于原生JS封装的Modal对话框插件的示例代码
Sep 09 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
PHP源码之 ext/mysql扩展部分
2009/07/17 PHP
《PHP编程最快明白》第四讲:日期、表单接收、session、cookie
2010/11/01 PHP
PHP多例模式介绍
2013/06/24 PHP
php插件Xajax使用方法详解
2017/08/31 PHP
PHP框架Laravel中使用UUID实现数据分表操作示例
2018/05/30 PHP
php模式设计之观察者模式应用实例分析
2019/09/25 PHP
Android中资源文件(非代码部分)的使用概览
2012/12/18 Javascript
Javascript实现商品秒杀倒计时(时间与服务器时间同步)
2015/09/16 Javascript
jquery 实现输入邮箱时自动补全下拉提示功能
2015/10/04 Javascript
使用jquery实现鼠标滑过弹出更多相关信息层附源码下载
2015/11/23 Javascript
JavaScript的new date等日期函数在safari中遇到的坑
2016/10/24 Javascript
vue中配置mint-ui报css错误问题的解决方法
2017/10/11 Javascript
angularjs1.5 组件内用函数向外传值的实例
2018/09/30 Javascript
JavaScript实现简单的图片切换功能(实例代码)
2020/04/10 Javascript
三步搞定:Vue.js调用Android原生操作
2020/09/07 Javascript
爬山算法简介和Python实现实例
2014/04/26 Python
Python 基础教程之str和repr的详解
2017/08/20 Python
Tensorflow 查看变量的值方法
2018/06/14 Python
对tensorflow 的模型保存和调用实例讲解
2018/07/28 Python
python Selenium实现付费音乐批量下载的实现方法
2019/01/24 Python
tensorflow 实现数据类型转换
2020/02/17 Python
Python远程linux执行命令实现
2020/11/11 Python
HTML5 Canvas的常用线条属性值总结
2016/03/17 HTML / CSS
Currentbody德国站:健康与美容技术专家
2020/04/05 全球购物
MySQL面试题目集锦
2016/04/14 面试题
九月份红领巾广播稿
2014/01/22 职场文书
更夫岗位责任制
2014/02/11 职场文书
公司总经理岗位职责范本
2014/08/15 职场文书
质量在我心中演讲稿
2014/09/02 职场文书
国际贸易本科毕业生求职信
2014/09/26 职场文书
2014年置业顾问工作总结
2014/11/17 职场文书
个人收入证明格式
2015/06/24 职场文书
维护民族团结心得体会2016
2016/01/15 职场文书
职工的安全责任书范文!
2019/07/02 职场文书
HTML速写之Emmet语法规则的实现
2021/04/07 HTML / CSS
python字符串常规操作大全
2021/05/02 Python