一、引用

< script src="public/js/sea.js" data-main="./main/main">< /script>

在html页面使用script标签引入seajs文件,
    设置属性data-main=‘’指定你写的功能js代码文件,避免了在html页面上写seajs.use代码,
    当然也可以在html页面写你的代码,但是前者可以使html页面简洁得只有html代码。
            
二、配置(seajs.config)

使用seajs.config可以配置文件的别名,路径别名等,方便其他文件使用的时候调用,避免重复及冗长的代码

方法:
            1).与seajs.use写在同一个文件里面(.js或者.html),seajs.config在seajs.use的上面
            2).独立的一个配置.js文件,使用script标签在html页面中引入,位置在引入seajs的下面

常用参数(更多参数配置请百度):
            base:Sea.js 在解析顶级标识时,会相对 base 路径来解析。
            paths:文件夹路径配置。
            alias:文件别名配置,配置之后可在模块中使用require调用。
            示例:
                seajs.config({
                    paths: {
                       'js': './public/lib/js' // js文件夹路径配置
                    },
                    alias: {
                       'jquery': 'js/jquery1.9.1' // js文件夹下面的jquery文件
                    }
                });

seajs.use使用:
                    seaJs.use(['jquery'],function($){
                        $(function(){
                            // jq 代码
                        })
                    })
                其他模块调用:
                    define(function(require, exports, module) {
                        require('jquery');
                        function fun(){
                            $(...)...
                        }
                    })
            
三、使用(seajs.use)

使用seajs.use来引用你的seajs插件或者在里面写其他功能。

seajs.use(['文件1','文件2',...],function(参数1,参数2,...){
            参数1.方法1()
            参数1.方法2()
            。。。
        })
            
四、seajs插件写法及用法

假设插件文件为test.js.
        第一种:
            define(function(require, exports, module) {
                fun1 = function(){ alert('fun1') }
                fun2 = function(){ alert('fun2') }
                exports = fun1; // 可以不定义接口名称
                exports = fun2; // 可以不定义接口名称
            })
            seajs.use使用:
                seaJs.use(['test'],function(){ //不需要设置参数
                    fun1() //直接引用
                    fun2() //直接引用
                })

第二种:
            define(function(require, exports, module) {
                function fun1(){ alert('fun1') }
                function fun2(){ alert('fun2') }
                exports.f1 = fun1; // 此时exports = fun1;无效,所以需要定义接口名称
                exports.f2 = fun2; // 此时exports = fun2;无效,所以需要定义接口名称
            })
            seajs.use使用:
                seaJs.use(['test'],function(getfun){ //对应文件设置参数 test ==> gettest
                    getfun.f1()  //由参数getfun带出f1接口内的方法fun1()
                    getfun.f2()  //由参数getfun带出f2接口内的方法fun2()
                })

第三种:外部一般js插件改写seajs插件
                有一个dialog.js插件:
                    function dialog(){}
                    dialog.prototype.xxx = function(){}
                                .
                                .
                                .
                改写seajs插件(sea_dialog.js):
                    1.将dialog.js的代码全部拷贝到:
                        define(function(require, exports, module) {
                            //dialog.js插件的带代码
                            exports.open = dialog;
                        })
                    2.将dialog.js插件require到seajs插件里面去:
                        define(function(require, exports, module) {
                            require('dialog')
                            exports.open = dialog;
                        })

seaJs.use(['sea_dialog'],function(dialog){
                        dialog.open()
                    })

第四种:jquery插件改写seajs插件
                有一个jq插件:tab.js
                    (function($){
                        $.fn.extend({
                            tab : function(option){
                                ...
                            }//tap:function()
                        });//$.fn.extend
                    }(jQuery));

改写seajs插件:
                    (function (factory) {
                        if (typeof define === 'function') {
                        // 如果define已被定义,模块化代码
                        define('tab',['jquery'], function(require,exports,moudles){
                            factory(require('jquery')); // 初始化插件
                            return 'jQuery'; // 返回jQuery
                        });
                    } else {
                        // 如果define没有被定义,正常执行jQuery
                        factory(jQuery);
                    }
                    }(function ($) { // 原jQuery插件内容
                        $.fn.extend({
                            tab : function(option){
                                ...
                            }//tap:function()
                        });//$.fn.extend
                    }));

seajs.use(['tab'],function(){
                                    el.tab({
                                        //参数设置
                                    })
                                });

seajs简易使用说明相关推荐

  1. AirDisk存宝 【S3\S6简易使用说明】

    1.安装硬盘     1)若是全新硬盘直接安装到S3\S6上面.     2)若是在其他设备或电脑上面用过的硬盘,硬盘先接到电脑备份好数据,到磁盘管理删除所硬盘有分区(无需格式化),然后把硬盘装到S3 ...

  2. CocosCreator粒子编辑器简易使用说明

    英文 翻译 备注 Preview 编辑器粒子预览 其他部分不受影响 Play On Load 自动播放粒子 其他部分不受影响 Auto Remove On··· 粒子播放结束后销毁节点 一次性的节点 ...

  3. matlab中link函数在哪里,[分享]Matlab工具箱Excel Link之简易使用说明

    1.启动Excel Link :(当然你必须已安装 Excel Link Toolbox) 1)开启 Microsoft excel . 2)Tools\Add-Ins\Browse\toolbox\ ...

  4. 锂电池使用注意事项及B3 B6平衡充简易使用说明

      智能车竞赛引入锂电池已有两三年的时间了,但是在给同学们答疑的过程中,依然经常遇到由于不了解锂电池特性,错误的使用方式而导致锂电池损坏的情况.由于我们在生活中接触到的锂电池,多为消费级产品内部内置的 ...

  5. argparse三步走使用说明

    argparse三步走使用说明 argparse用于从命令行进行传参,十分常用. 快速.简易使用说明:三步走,1.解析器实例化 2.添加参数 3.解析参数 test.py import argpars ...

  6. Linux下的文件共享全攻略系列之一:Samba服务器简介与快速配置指南

    目前,研究者们开发了许多网络服务和协议来完成资源共享的功能.对于网络用户和管理员来说,他们希望得到免费和高效的服务,而这种需求的最好选择莫过于当前开源的操作系统Linux下的产品了.本专题从多个应用服 ...

  7. lisp java_ai lisp java

    一条北极的鱼 阅读(431) 评论(3)  编辑  收藏 http://www.blogjava.net/lqsun/ java中的正则表达式 http://www.blogdriver.com/de ...

  8. ARM开发软件及实用软件介绍

    一.编译器介绍 1.ADS1.2     ADS是ARM公司的集成开发环境软件,他的功能非常强大.他的前身是SDT,SDT是ARM公司几年前的开发环境软件,目前SDT早已经不再升级.ADS包括了四个模 ...

  9. 为什么从网页上打印怎们好像被缩放_便捷高效低成本,映美热敏云打印机CTP-180UWE体验...

    打印机的分好几种,喷墨.激光.针式.热敏,还有之前火过一阵子的3D打印机等,前面三种我们公司都有在用,我同事打印单据都喜欢用针式,因为激光打印机出来的都是A4,太大了,也浪费.但是针式打印机速度很慢, ...

最新文章

  1. linux 环境配置 安装jdk
  2. Google的预训练模型又霸榜了,这次叫做T5(附榜单)
  3. python3.5怎么使用-如何在Python 3.5中使用async/await?
  4. 让你眼花缭乱的JS代码~~
  5. 网站性能优化之应用程序缓存-初篇
  6. 深入浅出讲解MSE Nacos 2.0新特性
  7. Asp.Net iframe Cookie 域 的问题!
  8. 合并Spark社区代码的正确姿势
  9. sql server无法绑定由多个部分组成的标识符_HTML5服务器推送事件(Server-sent-event)...
  10. 远程控制软件用户群分析
  11. trigger 根据绑定到匹配元素的给定的事件类型执行所有的处理程序和行为。
  12. CentOS7.x忘记root密码如何破解
  13. 海南凤凰机场智能通信解决方案
  14. 来JavaEye两年了
  15. 中环混改尚存变数 高调的TCL要上演“资本魔输”?
  16. NUL 与 NULL
  17. arcgis 实验教程--ModelBuilder与空间建模
  18. Ubuntu 16.04使用阿里云邮箱命令行发送邮件配置(完整亲测版)
  19. VUE3 之 组件传参
  20. 自定义函数求圆和圆柱体的表面积

热门文章

  1. 把HTML5静态网页部署到阿里云服务器
  2. 李亚鹏回应嫣然基金会风波:设立医院是需要
  3. 服务器磁盘配额,限制目录占用磁盘空间
  4. 东北大学计算机复试时间,2020年东北大学考研复试时间安排
  5. 比AtomicLong还高效的LongAdder 源码解析
  6. 手把手叫你 制作一个不需要任何工具 从网页上安装ipa包的办法
  7. 从SharePoint 2010网站上导出list的方法
  8. 经典.net面试(net面试题汇总)20200227版本
  9. Ajax(使用 jQuery,php)异步上传图片(二进制流)存储到新浪云平台storage
  10. 【硬件测试】华为2016校招·硬件技术工程师机考试题