Angularjs

Angularjs 提供了3种方法来创建并注册我们自己的 service.

1.Factory

2.Service

3.Provider

一. Factory:

1. 下面构建了一个MyFactory, 用于设置个人信息,并展示个人信息。

Note: 1. 必须在里面调用return 否则会报错

2. 所有的可访问的方法都放到了Service里面

app.factory('MyFactory',function(){

var service = {};
var _name = '';
var _age = '';

service.SetInfo = function(name,age){
_name = name;
_age = age;
}

service.ShowInfo = function(){
return _name+':'+_age;
}

return service;
});

2. 可以将通过function(MyFactory)中将服务注册到
Controller中. 控制台就会打印出Frank:23

var app = angular.module('myapp')
app.controller('InjectCtrl',function ($scope,MyFactory) {
MyFactory.SetInfo('Frank',23);
console.log(MyFactory.ShowInfo());
});
二. Service

1. Service与Factory用法差不多,区别在于不需要Return
一个对象.

var app = angular.module('myapp')

app.controller('InjectCtrl',function ($scope,MyService) {
MyService.SetInfo('Frank',23);
console.log(MyService.ShowInfo())
});

app.service('MyService', function(){
var _name = '';
var _age = '';

this.SetInfo = function(name,age){
_name = name;
_age = age;
}

this.ShowInfo = function(){
return _name+':'+_age;
}
});

三. Provider:

1. Provider: 通过#Get方法实现数据的返回.
app.provider('MyProvider',function(){

var service = {};
var _name = '';
var _age = '';

service.SetInfo = function(name,age){
_name = name;
_age = age;
}

service.ShowInfo = function(){
return _name+':'+_age;
}

this.$get = function(){
return service;
}
});

转载于:https://www.cnblogs.com/yangtao92/p/4639028.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值