puremve:
1.在页面 close="destroy()"
creationComplete="init()"
2.在init()方法中facade.startup(RoleConfigNotification.ROLE_CONFIG_STARTUP,this);
3.在Facade中,
registerCommand(RoleConfigNotification.ROLE_CONFIG_STARTUP, RoleConfigCommand);
4.在Command 中,facade.registerProxy(new RoleConfigProxy(RoleConfigProxy.NAME,notification.getBody()));
根据一个notification.getName()来发送一个消息:facade.sendNotification(RoleConfigNotification.ROLE_CONFIG_INIT, notification.getBody());
5.在Mediator中,override public function listNotificationInterests():Array{}
override public function handleNotification(notification:INotification):void
{
switch (notification.getName())
{
case RoleConfigNotification.ROLE_CONFIG_INIT:
//处理业务,调用proxy
}
}
6.Proxy执行成功:执行result(),发送一个消息:facade.sendNotification(RoleConfigNotification.ROLE_CONFIG_SETDATA,data.result);
Mediator 接受消息
执行失败:调用fault()方法
它实现IProxy,mx.rpc.IResponder这两个接口,继承Proxy类
它需要private var str:int;public static const NAME:String="RoleConfigProxy";
proxy调用business
public function result(data:Object):void
{
switch (str)
}
(1)业务:public class RoleConfigBusiness
{
private var responder:IResponder;
private var service:RemoteObject;
public function RoleConfigBusiness(responder:IResponder)
{
this.responder = responder;
this.service = ServicesUtil.getService("roleConfigService");
}
public function initRoleConfig(pageSize:int): void
{
var call:Object = service.initRoleConfig(pageSize);
call.addResponder(responder); //这两行固定写法,只需要改变一下service的方法名
}
}
(2)Facade:
public class RoleConfigFacade extends Facade
{
public static const NAME:String ="NAME_Role_Config_Facade";
public function RoleConfigFacade(key:String)
{
super(key);
}
public static function getInstance( key:String ) : RoleConfigFacade
{
if ( instanceMap[ key ] == null ) instanceMap[ key ] = new RoleConfigFacade( key );
return instanceMap[ key ] as RoleConfigFacade;
}
override protected function initializeController( ) : void //需要实现的方法
{
super.initializeController();
registerCommand(RoleConfigNotification.ROLE_CONFIG_STARTUP, RoleConfigCommand);
}}
(3)使用Button(事件监听,调用proxy,查询数据):
view.searchBtn.addEventListener(MouseEvent.CLICK, handleSearch);
private function handleSearch(event:MouseEvent):void{
var proxy:RoleConfigProxy = facade.retrieveProxy(RoleConfigProxy.NAME) as RoleConfigProxy;
proxy.search(role_name,itype,status,1,defaultPageSize);//调用proxy
}
(4)actionScript对空值的处理:
a.isNaN 函数:
(5)数据绑定:需要在mxml文件中定义一个变量:var role:Object;
需要一个与java中的vo对应的actionScript类:
下拉列表comBox: 绑定值需要使用selectedIndex
页面赋值:{role}
在业务层:需要转换成与java的vo对应的actionScript类
分享到:
相关推荐
### PureMVC流程详解 #### 一、概述 PureMVC是一种开源的、跨平台的框架,用于构建灵活且可维护的应用程序结构。它通过实现一种标准的模型-视图-控制器(MVC)设计模式,帮助开发者组织代码并简化应用开发流程。...
在探讨《pureMVC流程》这一主题时,我们首先需要明确PureMVC(Model-View-Controller)框架的基本概念及其在ActionScript中的实现方式。PureMVC是一种轻量级的架构模式,它将应用程序分为三个核心组件:模型(Model)...
3. **PureMVC流程**: - 应用启动时,首先创建Facade实例,初始化所有必要的组件。 - 用户操作触发事件,例如点击按钮。 - 视图中的Mediator接收到事件,通过Facade发送Notification。 - Facade接收到通知后,...
标题中的“可以运行的PureMVC的登陆实例”是指一个基于PureMVC框架的登录功能实现,这个实例已经经过验证可以在FlexBuilder3环境下正常运行。PureMVC是一种经典的多层应用架构模式,它为ActionScript、JavaScript、...
6. **Hello World示例**:通常会通过一个简单的“Hello World”程序来演示PureMVC的基本工作流程,展示如何创建并运行一个完整的MVC循环。 7. **源码分析**:可能对PureMVC的源码进行解析,帮助理解其内部机制和...
1. **MacroCommand**:宏命令是PureMVC的一个扩展,它允许将多个命令组合在一起,作为一个单一的命令执行,使得处理复杂流程变得更加简单。 2. **SimpleCommand**:简单命令是处理单个任务的命令,它接收通知,执行...
PureMVC是面向对象的多层应用程序框架,它提供了一种模式来组织代码,使开发更加规范和高效。本篇文章将深入探讨Unity中如何使用PureMVC框架,以及它如何帮助实现UI和逻辑的分离。 PureMVC是一个轻量级的框架,其...
通过这个实例,开发者可以了解PureMVC的完整工作流程,从而在自己的项目中更好地应用这个强大的框架。学习这个实例,不仅能加深对MVC模式的理解,还能提升在ActionScript或Flex环境下的开发能力。
PureMvc是一个开源的、轻量级的框架,用于构建多层结构的富客户端应用程序。它遵循Model-View-Controller(MVC)设计模式,并提供了一种标准化的方式来组织和协调应用程序的各个部分。在这个名为"MyFirstPureMvc"的...
三、PureMVC工作流程 1. 用户交互:用户在View层进行操作,触发事件。 2. Mediator响应:Mediator监听到事件后,创建并发送一个Notification。 3. Controller处理:Controller接收到Notification,根据类型调用相应...
“工具”标签则暗示PureMVC不仅是一个框架,还可能包含了一些辅助开发的工具或类库,这些工具可能简化了开发流程,提高了开发效率。 在压缩包内的文件“PureMVC中文教程.pdf”,我们可以期待它是一个详细的教程文档...
总的来说,这个压缩包提供了一个完整的PureMVC示例项目,通过分析源码、阅读`readme`文件以及理解项目配置,读者可以深入学习PureMVC的工作流程,同时掌握如何在实际项目中应用这个框架。这将有助于提升对MVC设计...
纯MVC(PureMVC)是一个轻量级的框架,主要设计用于构建具有模型-视图-控制器(Model-View-Controller)架构的多层应用。这个“pureMVC Demo C#”是PureMVC框架在C#语言环境中的实现示例。下面将详细介绍PureMVC框架...
《PureMVC登录示例详解》 在软件开发中,框架的选择往往对项目的架构和可维护性起到关键作用。PureMVC,一个轻量级、跨平台的MVC(Model-View-Controller)框架,因其简洁的设计和强大的组织能力,受到了许多开发者...
**PureMVC框架详解** PureMVC是一种轻量级、模型-视图-控制器(Model-View-Controller,MVC)框架,最初是为Flash/Flex应用设计的,但后来扩展到支持多种编程语言,包括JavaScript、Java、C#等。在Flex开发中,Pure...
PureMVC是一个开源的、轻量级的框架,专门用于构建多层应用程序。它采用Model-View-Controller(MVC)设计模式,并提供了一种在ActionScript 3中实现这一模式的方法。标题提到的"puremvc最新版本2.0.4源码",意味着...
这个“PureMVC简单例子”是为了帮助初学者理解PureMVC框架的基本原理和实际操作流程。在这个例子中,我们将深入探讨各层的职责以及它们之间的通信机制。 首先,我们来了解一下MVC模式。MVC模式是一种软件设计模式,...
通过深入研究PureMVC的源码,我们可以了解其内部工作原理,学习如何创建和管理MVC组件,以及如何有效地组织和控制应用程序的流程。这将有助于提升开发大型、复杂项目的技能,尤其是在需要高度组织和可维护性的项目中...
标题“pureMVC初尝试”表明我们即将探讨的是PureMVC框架在实际应用中的初步体验。PureMVC是一个开源的、轻量级的、模型-视图-控制器(MVC)设计模式实现,主要应用于Flex、AS3以及其它编程语言的项目中。它提供了一...
PureMVC旨在简化开发流程,提供一种结构化的代码组织方式,提高代码的可读性和可维护性。 描述中提到,“自己写的小例子,希望大家可以看得明白”,意味着这是一个个人创建的项目,旨在帮助学习者理解如何在实际...