我以前也做过这种自动加载模块的功能,可以并行和串行,但我觉得合并文件要好一些吧。加载多文件会增大http的请求。 声明,我没看过seaJS的代码,只是看过它的简单介绍
还是要看场景,两种方式都有优缺点
两种结合是最好的
像大项目比如说taobao,模块比较多,这种加载方式可能比较好,合并会有冲突的问题,但设计得好的话,一个公司开发的应该可以避免冲突。 小项目还是合并好了吧,没必要这么麻烦,搞个自动化合并就好了。
用spm也可以把几个模块打包到一个文件里面。
所谓模块化编程,一个.js文件里面只有一个模块么? 使用模块化编程,调试起来是否会更麻烦呢?
如果js文件太大,合并就不怎么好了
你遇到过因为合并而导致的冲突么? 赶脚不用全局变量,很难冲突的吧:)
这是两个概念。seajs主要做的是代码的模块化。因为一旦项目越来越大,很难完全避免域和变量冲突等问题。通过CMD或者AMD就可以将绝大多数的冲突问题解决掉。他为的是更好的组织代码和模块的结构。
代码合并、压缩和uglify为的是减少server请求数量及提高加载速度。
这两个一点也不冲突。
不用seajs的项目最终也未必一定会合并和压缩…这样的网站多了去了。
用了seajs的项目可以用spm进行模块的打包。最终多个模块,不代表有多个文件。