ActionScript 3

Данные приходят в виде результаты запроса к веб-сервису, формирующему сериализованный поток данных AMF. Удобно хранить полученный результат в ввиде статического свойства основного класса приложения.

Я обычно использую структуру из класса приложения App и класса модели Model, в котором происходит работа с данными CMS — получение данных и их отправка. В этом классе удобно хранить всё что связано с Flash Remoting и предоставлять другим классам свои методы работы с данными. При удачной реализации такая организация приложения позволяет вам абстрагировать всё остальное приложение от технологии передачи данных и строить, например, синхронизированные онлайн и оффлайн версии приложений.Полученный результат от сервиса есть смысл хранить в качестве статического свойства объекта-приложения или объекта Модели. Я его храню в классе App и называю data. Таким образом, все обращения к данным у меня выглядят как App.data из любой точки приложения. В основном классе приложения App определим переменную с абсолютным путём для разрешения ссылок:

Скачать исходник

package {
	import flash.events.*;
	import flash.net.NetConnection;
	import flash.net.Responder;
	public class Model {
		private var gateway:String;
		private var connection:NetConnection;
		private var responder:Responder;
		private var myParent:App;
		public function Model(mcParent:App) {
			myParent = mcParent;
                        var siteURL="http://demo.qubix-cms.org/";
			gateway = siteURL+"qubix/flash_gateway/gateway.php";
			responder = new Responder(onResult, onFault);
			connection = new NetConnection;
			connection.connect(gateway);
			sendData();
 
		}
 
		public function sendData():void {
                        var currentLanguage ="rus";
			connection.call("qubix_flash.getdata", responder, currentLanguage);
		}
 
		private function onResult(result:Object):void {
			App.data=new Object; // заводим новый объект, либо используем уже готовый
			App.data=result; // результат делаем глобальным обхектом. Здесь хранятся все данные
			myParent.initForms(); // теперь можно стартовать сайт
		}
		private function onFault(fault:Object):void {
		      trace("Ошибка")
		}
 
 
	}
}
 
Наверх
documentation/flash/install/actions_cript3.txt · Последние изменения: 2009/08/18 12:21 (внешнее изменение)