binglingnew 2013-05-14
sea.js小记
看目录结构,代码不算多,命名划分很清晰,仅看命名大概能猜到它的作用,比如require.js源码舒服多了
sea.js-定义sea.js的命名空间,在命名空间定义一些供内部适用的模块,达到分模块调试sea.js的目的
util前缀的文件:相对通用的工具类函数
util-lang.js-实现了一些基础函数,比如forEach,map等
util-error.js-提供错误输出的帮助函数,主要用于调试分析
util-helper.js-实现了解析module的url和id的函数
util-dom.js-和浏览器相关的操作比如添加script,link节点的操作都在这
fn前缀的文件:seajs中供内部适用的函数
fn-load.js:seajs.use实际上是调用该文件的方法
fn-define.js:define模块定义函数逻辑
fn-require.js:用于构造require的对象,该文件中包含factory的初始化过程
fn-config.js:包含seajs.config的实现,用于配置信息
fn-use.js:包含seajs.use的实现
sea-api.js:将实现的函数引用到seajs对象上
1.如果想看如何处理module的创建以及依赖过程的实现细节重点看fn-define.js,其中使用到了util-helper.js中的不少函数
2.如果想看seajs如何实现在use之前构建依赖环境重点看fn-load.js,fn-require.js,其中对浏览器动态创建script节点使用到了util-dom.js
切忌浮躁[/size]
http://www.cnblogs.com/shxydx/archive/2012/05/19/2508961.html