SeaJS中use函数用法实例分析


Posted in Javascript onOctober 10, 2017

本文实例讲述了SeaJS中use函数用法。分享给大家供大家参考,具体如下:

有了 define 等模块定义规范的实现,我们可以开发出很多模块。但光有一堆模块不管用,我们还得让它们能跑起来。在 SeaJS 里,要启动模块系统很简单:

<script src="path/to/sea.js"></script>
<script>
seajs.use('./main');
</script>

seajs.use 用来在页面中加载模块。通过 use 方法,可以在页面中加载任意模块。

语法:seajs.use seajs.use(id, callback?)

// 加载模块 main,并在加载完成时,执行指定回调
seajs.use('./main', function(main) {
main.init();
});

use 方法还可以一次加载多个模块:

// 并发加载模块 a 和模块 b,并在都加载完成时,执行指定回调
seajs.use(['./a', './b'], function(a, b) {
a.init();
b.init();
});

callback 参数可选。当只加载一个模块,且不需要 callback 时,可以用 data-main 属性来简化:

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

上面的代码等价于:

<script src="path/to/sea.js"></script>
<script>
seajs.use('./main');
</script>

SeaJS 还提供 data-config 来加载配置文件:

<script src="path/to/sea.js" data-config="path/to/config"></script>

data-config 等价:

seajs.config({
preload: ['path/to/config']
});

路径解析规则与 seajs.use 一致。

我这里用的是:

<script src="/js/lib/sea.js" data-config="/js/config.js"></script>
<script>
seajs.use('/js/main', function(main) {
main.banner_focus('#focus');
});

注:main为模块名。main.method为模块定义的函数,可以传递参数过去。

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
对textarea框的代码调试,而且功能上使用非常方便,酷
Jun 30 Javascript
兼容FF和IE的动态table示例自写
Oct 21 Javascript
原生javascript实现的分页插件pagenav
Aug 28 Javascript
JQuery中extend的用法实例分析
Feb 08 Javascript
Laydate时间组件在火狐浏览器下有多时间输入框时只能给第一个输入框赋值的解决方法
Aug 18 Javascript
jQuery的中 is(':visible') 解析及用法(必看)
Feb 12 Javascript
jQuery插件ImgAreaSelect实现头像上传预览和裁剪功能实例讲解一
May 26 jQuery
vue实现消息的无缝滚动效果的示例代码
Dec 05 Javascript
谈谈JS中的!!
Dec 07 Javascript
Vue项目中使用jquery的简单方法
May 16 jQuery
解决vue+ element ui 表单验证有值但验证失败问题
Jan 16 Javascript
JavaScript进阶(一)变量声明提升实例分析
May 09 Javascript
vue.js如何将echarts封装为组件一键使用详解
Oct 10 #Javascript
seajs模块压缩问题与解决方法实例分析
Oct 10 #Javascript
基于vue的换肤功能的示例代码
Oct 10 #Javascript
seajs中模块依赖的加载处理实例分析
Oct 10 #Javascript
利用JS hash制作单页Web应用的方法详解
Oct 10 #Javascript
认识jQuery的Promise的具体使用方法
Oct 10 #jQuery
JavaScript如何获取到导航条中HTTP信息
Oct 10 #Javascript
You might like
Linux下进行MYSQL编程时插入中文乱码的解决方案
2007/03/15 PHP
Discuz! Passport 通行证整合
2008/03/27 PHP
php中请求url的五种方法总结
2017/07/13 PHP
Laravel 5.4向IoC容器中添加自定义类的方法示例
2017/08/15 PHP
PHP实现搜索时记住状态的方法示例
2018/05/11 PHP
PHP封装请求类实例分析【基于Yii框架】
2019/10/17 PHP
JavaScript实际应用:innerHTMl和确认提示的使用
2006/06/22 Javascript
实现png图片和png背景透明(支持多浏览器)的方法
2009/09/08 Javascript
如何实现textarea里的不同文本显示不同颜色
2014/01/20 Javascript
jQuery中的编程范式详解
2014/12/15 Javascript
Node.js中child_process实现多进程
2015/02/03 Javascript
javascript操作select元素实例分析
2015/03/27 Javascript
JS中判断字符串中出现次数最多的字符及出现的次数的简单实例
2016/06/03 Javascript
Javascript简写条件语句(推荐)
2016/06/12 Javascript
Backbone View 之间通信的三种方式
2016/08/09 Javascript
JS填写银行卡号每隔4位数字加一个空格
2016/12/19 Javascript
Angular4学习笔记之实现绑定和分包
2017/08/01 Javascript
jquery 一键复制到剪切板的实例
2017/09/20 jQuery
JavaScript函数绑定用法实例分析
2017/11/14 Javascript
Vue用v-for给循环标签自身属性添加属性值的方法
2018/10/18 Javascript
微信小程序实现点击图片旋转180度并且弹出下拉列表
2018/11/27 Javascript
vue组件创建的三种方式小结
2020/02/03 Javascript
JS组件库AlloyTouch实现图片轮播过程解析
2020/05/29 Javascript
[01:04:29]DOTA2-DPC中国联赛 正赛 Phoenix vs XG BO3 第二场 1月31日
2021/03/11 DOTA
Python易忽视知识点小结
2015/05/25 Python
pygame游戏之旅 添加碰撞效果的方法
2018/11/20 Python
Python3爬虫爬取英雄联盟高清桌面壁纸功能示例【基于Scrapy框架】
2018/12/05 Python
django框架事务处理小结【ORM 事务及raw sql,customize sql 事务处理】
2019/06/27 Python
Python函数生成器原理及使用详解
2020/03/12 Python
Aveda美国官网:天然护发产品、洗发水、护发素和沙龙
2016/12/09 全球购物
护理不良事件检讨书
2014/02/06 职场文书
学校文明单位申报材料
2014/05/06 职场文书
机关作风整顿个人剖析材料
2014/10/06 职场文书
python 下划线的多种应用场景总结
2021/05/12 Python
Python常用配置文件ini、json、yaml读写总结
2021/07/09 Python
Nginx 配置 HTTPS的详细过程
2022/05/30 Servers