casync.js RIA快速构建开发

官方 casync.js : www.cityooh.com
C_async.js是一款基于JQ的免费开发框架,它可以帮助您模块化各子集功能,快速构建单页面的web应用,集合了日常RIA开发中,部分常用功能,并可依据实际项目的需求进行定制化的导入。
目前,casync.js引入了page和define的概念,它是类似于sea.js的模块化加载器,可以极大的方便开发人员去划分项目结构。
下面是一个简单的实例:
首先,需要您引入以下的一些文件

config.js

( function( $ ){
	var $g = window.$g = {
		modules 	: $c.page( $( "body" ) , {
			home 	: "js/home.js",
			pageOne	: "js/pageOne.js",
			pageTwo : "js/pageTwo.js",
			pageTre : "js/pageTre.js"
		} ),
		plugin 		: $c.page( {
			pluginOne 	: "js/plugin/pluginOne.js",
			pluginTwo 	: "js/plugin/pluginTwo.js",
			pluginThr 	: "js/plugin/pluginThr.js"
		} ),
		global 		: $c.page( {
			configOne 	: "js/config/configOne.js"
		} )
	};
	$g.modules.home.display( function(){
		console.log( "home" );
	} );
	$g.global.configOne.get( function(){
		console.log( $g.global.configOne );
	} );
} )( jQuery );

home.js


$c.define( {
	// 	这里为page  它为申明page模块
	page 		: $g.modules.home,
	//	url	注入当前js 具体实现的依赖文件 
	url 		: [ "js/homeOne.js" , "js/homeTwo.js" , "css/home.min.css" , "page/home.html" ],
	constructor : function(){
		var self = this;
		self.say();
		//	return  为 外抛方法集    类似于node.js中 exports 的作用
		return {
			tell 	: function(){
				self.say();
			}
		};
	}
} );


homeOne.js

$c.define( {
	//	这里为parent  它指向自己的父级 page
	parent 		: $g.modules.home,
	url 		: [ "js/homeThr.js" ],
	constructor : function(){
		var self = this;
		return {
			say 	: function(){
				console.log( self );
			}
		};
	}
} );




上述代码中引入了一个层级关系 homeOne.js 是隶属于 home.js 里的
home.js 里 可以调用homeOne里 外抛的方法  当然您也可以 在其它模块中 使用 $g.modules.home.say(); 来进行使用
如果您希望 子 中的方法仅内部使用  您也可以在父级中 return = { say : null }
这样它可以禁用外部模块使用它
casync.js中未对开发方式进行任何的约束 您可以对模块的管理进行随意的划分
上例中我将项目分为页面层(modules)、插件(plugin)、配置层(global)
您也可以根据开发人员的个人偏好 设置为mvc等等
更多的信息可以参考官方:www.cityooh.com

casync.js RIA快速构建开发,古老的榕树,5-wow.com

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。