deep-fish-pixel / compose

amd框架,主要支持对象检索、多个入口

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

异步加载工具
使用背景
    主流加载框架固然有很多优点,但缺点亦有:
    	1.侵入性强,项目改造工作量大
        2.前后台开发不便,只有一个入口,后台代码怎么写
        3.语法理解有一些要求
    本加载器针对以上缺点设定,
    	1.对原代码无侵入,使用对象检索
        2.可以有多个入口,重复调用compose.require即可,后台开发也可同步调用到前端代码,却不会有未定义现象
        3.对语法需求降低很多,只要使用compose.require, 属性配置或compose.config 即可
        4.支持amd、cmd式写法
        5.对cmd的模块回调中再请求模块进行的是真正的异步调用,这样才是真正实现需要的资源后续加载,而需要同步的资源需在头部配置
		6.通过多个入口js,可利用浏览器并发下载,且相同的入口模块可公用,达到最大程度的性能提升
入口说明
    1.属性配置有3项
	data-basepath="scripts" data-contextpath="" data-dependonload="true" data-param="v=1"
    2.js配置优先级会覆盖属性配置
	compose.config({
		basePath: 'scripts',//设置javascript公共路径
		contextPath: '',//设置项目路径,默认为当前目录
		dependOnload: 'true',//是否通过onload触发,配置为true即可
        data-param: 'v=1', //版本号
		paths: { //配置对象和路径的键值对
			jQuery: 'http://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min'
		}
	})
    3.只有一个接口, 重复再重复
	compose.require(['a'], function(a){
		alert(a);
	},['a']);
	compose.require(function(){
		alert('入口');
	})
    4.一个原则是,对js资源引用,第一次引用资源需有对象检索数组,如上例的['a'],后面不再需要
    	css资源不需检索
    5.接近20个demo, 涵盖所有功能
    6.目前需依赖grunt配合使用
版本修改
	v1.0.1
		1.修改多级对象索引失败的bug
		2.在多核浏览器中,异步调用会出现失败,触发器使用window对象load事件触发

About

amd框架,主要支持对象检索、多个入口


Languages

Language:JavaScript 53.0%Language:HTML 40.1%Language:CSS 6.9%