`
flex_莫冲
  • 浏览: 1104661 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

初次seajs使用

 
阅读更多
第一次用报了$=null的错误。然后上网查了是jquery需要封装成CMD才能使用。于是就删掉jquery中的AMD支持,就OK了

之后又use了uploadifive这个jquery 插件,不论用use方式还是require方式,虽然能导入uploadifive,而且也没报错,但是不能用的。点upload按钮都没反应。初始化的js代码都执行了。(否则报错)。必须用传统的script标签导入才能使用。而且jquery mobile用use或require都是支持的。

因为这个原因,我只好用传统的script标签导入jquery和所有jquery插件。因为不能只有一个uploadifive用传统的,它依赖jquery,jquery也需要用传统的方式导入。因此所有jq插件都必须用传统方式了。

然后想将css也一起用use方式导入。这个应该没问题。但是,若js都用传统方式了,css也没必要再用use方式,直接用传统的link标签导入吧。

搞了一圈,只有自己写的js和css用seajs的CMD模块化导入。几次想放弃用seajs,但是既然这么多人用它肯定是有好处的。

不知道requirejs怎么样,由于jquery默认支持amd模块,不需要手动修改jquery。那jquery插件需要再修改吗?有空再研究下requirejs。而且我做的项目基本是所有js资源都要预加载的,应该更适合用requirejs。

记录:
1 可使用spm install jquery/jquery命令在当前目录下自动生成CMD模块化后的jquery。

存在问题:
1 想将css一起打包进main,导入了seajs-style,并在config配置了preload:["style"],但是sea.importStyle依然是null?
2 旧代码存在相互依赖。但是seajs2.1.1不支持相互依赖了。而node.js是支持的。seajs会自动停止,不执行了。
解决方案:采用中间件解耦。参考资料
http://leyteris.iteye.com/blog/1159307

3 src中的js文件引用了src外部的公共js,如何将这些共用的js也一起压缩打包?好像spm build只能压缩src目录下的js文件。
分享到:
评论

相关推荐

    seajs js 模块加载器

    例如,你可以使用`seajs.preload`来预先加载一些常用模块,或者使用`seajs.config`配置项来定义模块的加载策略。 在实际开发中,SeaJS 可以与构建工具(如Gulp、Webpack)配合使用,进行模块的打包和优化,进一步...

    seajs_2.3.0以及学习文档

    3. **模块加载策略**:Seajs 支持异步加载和延迟加载,可以根据需要动态加载模块,降低页面初次加载的压力。 4. **路径解析**:Seajs 提供了配置文件来管理模块路径,使得模块路径可以相对或绝对,方便构建和部署。...

    seajs simple demo

    Seajs支持异步加载模块,这使得文件按需加载成为可能,减少了页面初次加载时的等待时间。同时,由于模块加载是异步的,因此我们需要确保模块的执行顺序,通常通过依赖注入来实现。 5. **模块化的好处**: 使用...

    Seajs是什么及sea.js 由来,特点以及优势

    3. 使用seajs.use方法来加载和使用模块。 示例代码如下: ```html <script src="../js/examples-master/sea-modules/seajs/seajs/2.1.1/sea.js"> // 配置js路径 seajs.config({ alias: { "jquery": "../...

    基于RequireJS和JQuery的模块化编程日常问题解析

    但加载时机和执行方式有所不同:RequireJS会在模块加载完成后立即执行,而seajs则是等到实际需要模块的功能时才去加载和执行,这就可能导致初次加载时seajs的效率更高,但在使用过程中可能会出现卡顿。在选择...

    如何使用headjs来管理和异步加载js

    本文主要探讨了如何使用headjs这个轻量级的JavaScript库来实现动态管理和异步加载JavaScript文件,以解决对于小型项目中可能过于复杂的模块加载器如requirejs和seajs的需求。 首先,了解JavaScript的执行特性至关...

Global site tag (gtag.js) - Google Analytics