如何使用javascript的PureMVC框架 - 初始化

相信写Flex的人都知道PureMVC框架,本人之前就有段时间一直在用它,总体感觉还算不错。

PureMVC实现了经典MVC元设计模式,这三部分由三个单例模式类管理,

分别是Model、View和Controller。三者合称为核心层或核心角色。  

PureMVC中还有另外一个单例模式类——Facade,Facade提供了与核心层通信的唯一接口,以简化开发复杂度。

PureMVC使用Notification进行通信,实现了模块之间的低耦合度。


废话少说,我们还是来看看实例吧!


首先我们得先准备好库文件

下载地址 http://download.csdn.net/detail/laogong5i0/4401753 这里是我收集的PureMVC库文件,只要在你的Html里面导入这四个文件就可以了。


或者你可以看本实例的最终源文件

下载地址: http://download.csdn.net/detail/laogong5i0/4400288


相关教程

如何使用javascript的PureMVC框架 - Command/controller层

如何使用javascript的PureMVC框架 - Mediator/View层



准备工作做好后我们就可以开始了。

新建jsPureMVCDemo.html文件,并在html文件里导入刚刚下载的库文件。

	<script type="text/javascript" src="lib/jquery-1.7.2.min.js"></script>
	<script type="text/javascript" src="lib/jquery-ui-1.8.16.custom.min.js"></script> 
	<script type="text/javascript" src="lib/objs-2.1.1-min.js"></script>
	<script type="text/javascript" src="lib/puremvc-objs-2.0-min.js"></script>


然后在jsPureMVCDemo.html所在的文件夹新建文件夹 src/demo/

在demo文件夹下新建一个叫ApplicationFacade.js的js文件

并输入一下内容,保存。

/**demo.ApplicationFacade是指文件夹src/demo/下的ApplicationFacade.js文件
 * Facade 是指继承自PureMVC的Facade实
 */
var ApplicationFacade = Objs("demo.ApplicationFacade",
    Facade,
    {
        
        /**
         * 程序开始入口
         * @param {HTMLElement} app
         *         Html 根节点标签
         */
        startup: function( app )
        {
        },
        
        /**
         * 重写initializeController(),并注册commands,在这里不能注册Mediator,
         * 因为View还没有被初始化
         * @override
         */
        initializeController: function()
        {
            alert('initialize');
        }
    }
);

/**
 * 实现程序的单例类
 * @return {ApplicationFacade}
 *         Facade实例类的使用贯穿整个程序
 */
ApplicationFacade.getInstance = function()
{
    if( !Facade.instance ) 
        Facade.instance = new ApplicationFacade();
    
    return Facade.instance;
}; 


接着我们在html文件里添加一下代码

<!-- 先导入ApplicationFacade.js文件 -->
<script type="text/javascript" src="src/demo/ApplicationFacade.js"></script> 









<script type="text/javascript">
	$(document).ready
	(
		function()
		{
			var applicationFacade/*ApplicationFacade*/ = ApplicationFacade.getInstance();
			applicationFacade.startup( $("body") );
		}
	);
</script>

最后完成后文件夹得目录树为


 

好了!!运行试试看是不是有东西输出呢?

 







                
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值