angularJs 自定义服务 provide 与 factory 的区别
<!DOCTYPE html>
<html lang="en" ng-app="myApp">
<head>
<meta charset="UTF-8" />
<title>Document</title>
<script src="angular.min.js" ></script>
<script type="text/javascript">
var m1 = angular.module('myApp', []); // 自定义服务 -- factory
// m1.factory('myService', function() {
// return {
// name : 'liuyi',
// age : 30,
// showName : function() {
// return this.name + '今年' + this.age + '岁了';
// }
// }; // }); // 自定义服务 provider
m1.provider('myService', function() {
return {
name : '刘二',
age : 40,
$get : function() {
return {
name : this.name,
age : this.age,
showName : function() {
return this.name + '今年' + this.age + '岁了';
} };
} };
}); // 自定义服务 -- 随机函数
// m1.factory('rndFn', function() { // return function( n1, n2 ) {
// return Math.random()*(n2 -n1) + n1;
// }
// }); // 改写配置参数
// m1.config( ['myServiceProvider', function(myServiceProvider) { // myServiceProvider.age = 100; // }] );
m1.config( ['randomFnProvider', function(randomFnProvider) { randomFnProvider.bInt = false; }] );
// 控制器
// m1.controller('firstController', ['$scope', 'rndFn', function($scope, rndFn) { // console.log( rndFn( 0, 5 ) );
// }]); m1.provider('randomFn', function() {
return {
bInt : false,
int : function( args ) {
if( args ) {
this.bInt = true;
} else {
this.bInt = false;
}
},
$get : function() {
var This = this;
return function( n1, n2 ) {
return This.bInt ? Math.floor(Math.random()*(n2 - n1) + n1) : Math.random()*(n2 - n1) + n1
};
} }; }); m1.controller('firstController', ['$scope', 'randomFn', function($scope, randomFn) { console.log( randomFn(0, 5) );
}]); </script>
</head>
<body ng-controller="firstController"> </body>
</html>
angularJs 自定义服务 provide 与 factory 的区别的更多相关文章
- 深究AngularJS——自定义服务详解(factory、service、provider)
		
前言 3种创建自定义服务的方式. Factory Service Provider 大家应该知道,AngularJS是后台人员在工作之余发明的,他主要应用了后台早就存在的分层思想.所以我们得了解下分 ...
 - 【AngularJS中的自定义服务service VS factory VS provider】---它们的区别,你知道么?
		
在介绍AngularJS自定义服务之前,我们先来了解一下AngularJS~ 学过HTML的人都知道,HTML是一门很好的伪静态文本展示设计的声明式语言,但是,要构建WEB应用的话它就显得乏力了. 而 ...
 - angularjs  自定义服务的三种方式
		
angularjs 中可通过三种($provider,$factory,$service)方式自定义服务,以下是不同的实现形式: // 定义module , module中注入$providevar ...
 - angularjs 自定义服务(serive,factory,provder) 以及三者的区别
		
1.Serive 服务:通过service方式创建自定义服务,相当于new的一个对象:var s = new myService();,只要把属性和方法添加到this上才可以在controller里调 ...
 - angularJs自定义服务(实现签名和加密)
		
写在前面: angularJS是google公司主推的js开发优秀框架... 页面展示: 在应用中进行加密是普遍存在的,个人建议在前端实现加密签名(前端加密是否必要来自知乎:http://www.zh ...
 - angularJs自定义服务
		
在AngularJS中,系统内置的服务都是以$开头,所以我们的自定义服务尽量避免以$开头.自定义服务的方式有如下几种: 使用Module的provider方法 使用Module的factory方法 使 ...
 - angularJS自定义服务的几种方式
		
在angularJS中定义服务共有四种常见的方式:factory,service,provider,constant,value 使用形式的不同: 1)factory以返回对象的形式定义服务: mya ...
 - 自定义服务与调用--------factory
		
自定义服务: angular.module('myApp').factory('UserService',['$http','$q',function ($http,$q) { // 定义一个方法工厂 ...
 - angularjs  自定义服务
		
<!DOCTYPE HTML> <html ng-app="myApp"> <head> <meta http-equiv="C ...
 
随机推荐
- ubuntu server samba服务器配置
			
ubuntu server samba服务器配置 samba可以实现不同操作系统电脑之间的文件共享服务 如:mac os,linux,unix,windows,等 一:安装samba服务器 ubunt ...
 - EF Core » 关系
			
对初学者理解关系很有用,先留下来,有时间边看边翻译. Caution 注意 This documentation is for EF Core. For EF6.x and earlier relea ...
 - java中身份证号15位转18位
			
/** * 将15位转换为18位 * @param idCode 15位身份证号 * @return String 18位身份证号 */ public String toEighteen(String ...
 - Date的那一大堆事儿--1
			
String perfTimeStr = "";// 统一设置日历格式 Calendar calendar = Calendar.getInstance(); calendar.s ...
 - Leetcode--Add two number
			
地址:https://leetcode.com/problems/add-two-numbers/ 代码: class Solution { public: ListNode* addTwoNumbe ...
 - Mybatis 学习-2
			
创建基于session的util类,在线程中共享SqlSession package cn.smartapp.blogs.pojo; import java.io.Serializable; impo ...
 - web开发必须知道的javascripat工具
			
1,JavaScript compressor and comparison tool 有许多工具可以帮助你压缩JavaScript代码,但是这个过程比较耗时,并且,对于某个特定的场景来说,很难分析出 ...
 - java 多线程——一个定时调度的例子
			
java 多线程 目录: Java 多线程——基础知识 Java 多线程 —— synchronized关键字 java 多线程——一个定时调度的例子 java 多线程——quartz 定时调度的例子 ...
 - sap快捷搜索菜单栏
			
对于像我这样的初学者来说,用好SAP菜单栏是非常重要的.正好,偶然发现了标准的菜单搜索程序,就分享下. REPORT:SSM_SEME T-CODE:SEARCH_SAP_MENU 菜单节点表:sme ...
 - HTML 基础知识——8月8日
			
一.基础知识: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www ...