PureMVC(JS版)源码解析(八):Proxy类
前面,我们讲了与视图相关联的Mediator类,接下来我们讲讲与数据相关联的Proxy类。
* In PureMVC, Proxy classes are used to manage parts of the application's data
* model.
翻译成中文就是,在PureMVC中,Proxy类用来管理应用的数据模型。
Proxy类的结构很简单,一个和Mediator类功能一样的NAME静态成员,还有一个data属性,用来存储proxy管理的数据。
/**
* @ignore
* The Proxys name.
*
* @protected
* @type String
*/
Proxy.prototype.proxyName= null; /**
* @ignore
* The Proxy's data object.
*
* @protected
* @type Object
*/
Proxy.prototype.data= null;
这两个属性都有get/set方法(getProxyName()/setData()/getData())。
接下来,我们看看Proxy类的构造函数:
function Proxy(proxyName, data)
{
this.proxyName= proxyName || this.constructor.NAME;
if(data != null)
{
this.setData(data);
}
};
Proxy类通过构造函数为proxyName和data属性赋初值。
Proxy类继承Notifer类,因此它可以发送消息,但他是一个纯粹的通知者,它不具备接受消息的功能,这一点需要记住。
Proxy.prototype= new Notifier;
Proxy.prototype.constructor= Proxy;

PureMVC(JS版)源码解析(八):Proxy类的更多相关文章
- AOP源码解析:AspectJAwareAdvisorAutoProxyCreator类的介绍
AspectJAwareAdvisorAutoProxyCreator 的类图 上图中一些 类/接口 的介绍: AspectJAwareAdvisorAutoProxyCreator : 公开了Asp ...
- Mybatis源码解析3——核心类SqlSessionFactory,看完我悟了
这是昨晚的武汉,晚上九点钟拍的,疫情又一次来袭,曾经熙熙攘攘的夜市也变得冷冷清清,但比前几周要好很多了.希望大家都能保护好自己,保护好身边的人,生活不可能像你想象的那么好,但也不会像你想象的那么糟. ...
- jquery源码解析:proxy,access,swap,isArraylike详解
jQuery的工具方法,其实就是静态方法,源码里面就是通过extend方法,把这些工具方法添加给jQuery构造函数的. jQuery.extend({ ...... guid: 1, //唯一标识符 ...
- jQuery 源码解析(八) 异步队列模块 Callbacks 回调函数详解
异步队列用于实现异步任务和回调函数的解耦,为ajax模块.队列模块.ready事件提供基础功能,包含三个部分:Query.Callbacks(flags).jQuery.Deferred(funct) ...
- AOP源码解析:AspectJExpressionPointcutAdvisor类
先看看 AspectJExpressionPointcutAdvisor 的类图 再了解一下切点(Pointcut)表达式,它指定触发advice的方法,可以精确到返回参数,参数类型,方法名 1 pa ...
- java源码解析之Object类
一.Object类概述 Object类是java中类层次的根,是所有类的基类.在编译时会自动导入.Object中的方法如下: 二.方法详解 Object的方法可以分成两类,一类是被关键字fin ...
- Netty源码解析 -- 内存对齐类SizeClasses
在学习Netty内存池之前,我们先了解一下Netty的内存对齐类SizeClasses,它为Netty内存池中的内存块提供大小对齐,索引计算等服务方法. 源码分析基于Netty 4.1.52 Nett ...
- Bulma 源码解析之 .columns 类
{说明} 这一部分的源码内容被我简化了,另外我还额外添加了一个辅助类 is-grow. .columns // 修饰类 &.is-centered justify-content: cente ...
- java源码解析之String类(二)
上一节主要介绍了String类的一些构造方法,主要分为四类 无参构造器:String(),创建一个空字符串"",区别于null字符串,""已经初始化,null并 ...
- java源码解析之String类(一)
String是我们接触最多的类,无论是学习中还是工作中,基本每天都会和字符串打交道,从字符串本身的各种拼接.切片.变形,再到和其他基本数据类型的转换,几乎无时无刻都在使用它,今天就让我们揭开Strin ...
随机推荐
- python中的单下划线和双下划线意义和作用
Python中并没有真正意义上的“私有”,类的属性的的可见性取决于属性的名字(这里的属性包括了函数).例如,以单下划线开头的属性(例如_spam),应被当成API中非公有的部分(但是注意,它们仍然可以 ...
- [topcoder]TopographicalImage
BFS.这里用了queue,以及在数据结构里存了上一个的高度.也可以递归调用完成BFS,在调用之前做判断:http://community.topcoder.com/stat?c=problem_so ...
- [wikioi]过河卒
棋盘型动态规划.(PPT:http://wenku.baidu.com/view/56badad850e2524de5187ea3.html)该类动态规划有一个共性,那就是在一个矩阵中(一般是二维矩阵 ...
- 计算机中的大小端模式及C语言中如何鉴别他们
我的博客:www.while0.com 参考http://blog.csdn.net/ce123_zhouwei/article/details/6971544 写的很详细. 大小端主要是对数字类型来 ...
- Adobe Flash Builder 4.7下载地址及破解补丁(32位&64位)
Adobe FlashBuilder 4.7是开发flex的利器,能显著提高flex的开发效率.最新版的是4.7,去官网上下载时每次都要登录才能下载,特麻烦,这次下载时就把相关的下载地址给记录了下来, ...
- WebView 和Animation冲突
当有WebView时,可能会出现 动画没有执行过程. 解决方法: child.setLayerType(View.LAYER_TYPE_HARDWARE, null); child.setAnimat ...
- [转]笔记本Ubuntu系统关闭独显+省电降温设置
[转载者按]最近装了Ubuntu 13.04 64 bits版操作系统玩玩,但是发现两个显卡都开着,所以上网查找资料,以在不需要3D的时候关闭Nvidia显卡.通过Bumblebee软件包可以达到这一 ...
- 我对Burnside定理的理解
我想了想,发现可以证明burnside定理. 置换:n个元素1,2,-,n之间的一个置换表示1被1到n中的某个数a1取代,2被1到n中的某个数a2取代,直到n被1到n中的某个数an取代,且a1,a2, ...
- HDU-2549 壮志难酬
壮志难酬 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submi ...
- Android环境rm命令
How can I execute all the possible unix(shell) commands in android programmatically? Android can't e ...