博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
深究AngularJS——自定义服务详解(factory、service、provider)
阅读量:5239 次
发布时间:2019-06-14

本文共 1088 字,大约阅读时间需要 3 分钟。

前言

  1. 3种创建自定义服务的方式。 
    1. Factory
    2. Service
    3. Provider
  2. 大家应该知道,AngularJS是后台人员在工作之余发明的,他主要应用了后台早就存在的分层思想。所以我们得了解下分层的作用,如果你是前端人员不了解什么是分层,那么你最好问问你后台的小伙伴。 
    dao层:就是Model层,在后台时,这一层的作用,就要是写与数据库交互数据的一层,在angularJS里就主要是写ajax的。 
    service层:主查写逻辑代码的,但在angularJS里也可以持久化数据(充当数据容器),以供不同的controller高用。 
    controller层:即控制层,在angularJS里就是写控制器的。控制器里尽量不要写那些不必要的逻辑,尽量写在service层里。 
    所以,就有了创建自定义服务的三种方式。

factory

factory方式创建的服务,作用就是返回一个有属性有方法的对象。相当于:var f = myFactory();

 

{ { r}}

 

在自定义服务里注入服务示例,但不能注入$scope作用域对象。

service

通过service方式创建自定义服务,相当于new的一个对象:var s = new myService();,只要把属性和方法添加到this上才可以在controller里调用。

{ { r}}

3.provder

只有provder是能传 .config() 函数的 service。如果想在 service 对象启用之前,先进行模块范围的配置,那就应该选择 provider。需要注意的是:在config函数里注入provider时,名字应该是:providerName+Provider. 

使用Provider的优点就是,你可以在Provider对象传递到应用程序的其他部分之前在app.config函数中对其进行修改。 
当你使用Provider创建一个service时,唯一的可以在你的控制器中访问的属性和方法是通过$get()函数返回内容。

4.在过滤器中注入自定义服务

在过滤器中使用服务:

{ {255 | myFormat}}

版权声明:博主地址:http://blog.csdn.net/zcl_love_wx

转载于:https://www.cnblogs.com/TDNZWT/p/8486905.html

你可能感兴趣的文章
hdu4105  Electric wave
查看>>
基于内容的图片检索CBIR(Content Based Image Retrieval)简介
查看>>
线程androidAndroid ConditionVariable的用法
查看>>
程序电脑VS2008 应用程序配置不正确,未能启动该应用程序。重新安装程序可以修复此问题。解决方法...
查看>>
设置类UIColor使用colorWithRed定义颜色
查看>>
文件语音识别Google语音识别学习札记 - Windows PC机上测试语音识别Strut2教程-java教程...
查看>>
μC/OS-III---I笔记13---中断管理
查看>>
:after,:before,content
查看>>
FTTB FTTC FTTH FTTO FSA
查看>>
OpenAI Gym
查看>>
stap-prep 需要安装那些内核符号
查看>>
网易杭研后台技术中心的博客 -MYSQL :OOM
查看>>
第二章 数据通信的基础知识 计算机网络笔记 学堂在线 2.1 数据传输系统 2.2 信号...
查看>>
如何解决click事件的重复触发问题
查看>>
2016寒假自学笔记
查看>>
VC++2012编程演练数据结构《21》二叉排序树
查看>>
linux命令mkdir&chmod&chown
查看>>
python3之memcached
查看>>
cout与cerr
查看>>
xxl-job 源码分析系列(1)- 配置运行
查看>>