简单总结sea.js 学习

文件文件夹结构

  /sea/sea.js      下载地址  http://seajs.org/docs/#downloads

  /sea/jquery-sea.js   下载地址 http://jquery.com/download/

  /sea/sea_config.js

  /sea/home.jsdata.js

  /sea/data.js

1.html页面代码文件

<style>
.ch{height:200px;width:200px;background:#ccc;}
</style>
<div class="cl"></div> <!-- 引入sea.js文件 -->
<script src="/sea/sea.js"></script> <!-- 引入sea_config.js配置文件 -->
<script src="/sea/sea_config.js"></script> <script type="text/javascript">
seajs.use(['jquery','home'],function(a,b){ //
alert(b.foo); //调用home中的foo属性
b.init(); //调用home中的init接口
b.all(); //调用home中的all接口
})
</script>

2.sea_config.js配置文件

seajs.config({

  // 别名配置
alias: {
'jquery': '/sea/jquery-sea',
'home': '/sea/home',
'data': '/sea/data'
}, // 路径配置
//paths: {
// 'gallery': 'https://a.alipayobjects.com/gallery'
//}, // 变量配置
//vars: {
// 'locale': 'zh-cn'
//}, // 映射配置
//map: [
// ['http://example.com/js/app/', 'http://localhost/js/app/']
//], // 预载入项
//preload: ['jquery','home'], // 调试模式
debug: true, // Sea.js 的基础路径
//base: 'http://example.com/path/to/base/', // 文件编码
charset: 'utf-8'
});

3.home.js模块文件

define(function(require, exports, module){
var data = require('data'); // 载入data模块 data.js
function wo(){ //内部函数,init中调用
alert("load $");
};
alert(data.blog); //直接运行函数
module.exports = { //当前模块对外提供的接口
foo:'hello', //属性
init : function(){ //接口init
wo(); //运行内部函数
$(".cl").addClass("ch");
},
all : function(){ //接口all
alert(data.author);
}
};
console.log(require.resolve('jquery')); //require.resolve返回别名文件 解析后的绝对路径 });

4.data.js模块文件

define({
author: 'ZhangYanpo',
blog: 'http://www.ktuo.cn'
});

JavaScript模块载入框架sea.js 学习一的更多相关文章

  1. js模块加载框架 sea.js学习笔记

    seajs实现了JavaScript 的 模块开发及按模块加载.用来解决繁琐的js命名冲突,文件依赖等问题,其主要目的是令JavaScript开发模块化并可以轻松愉悦进行加载. 官方文档:http:/ ...

  2. 解密javascript模块载入器require.js

    require.config require.config设置require.js模板载入选项 // 定义config req.config = function (config) { return ...

  3. Sea.js学习3——Sea.js的CMD 模块定义规范

    在 Sea.js 中,所有 JavaScript 模块都遵循 CMD(Common Module Definition) 模块定义规范.该规范明确了模块的基本书写格式和基本交互规则. 在 CMD 规范 ...

  4. sea.js 学习

    开篇:终于学习了sea.js的使用了,因为它是一个模块加载工具,所以首先要了解javascript的模块编程,然后对sea.js的了解和使用 javascript 模块编程 为什么要模块化编程,为了让 ...

  5. Sea.js学习4——Sea.js的配置

    可以对 Sea.js 进行配置,让模块编写.开发调试更方便. seajs.config seajs.config(options) 用来进行配置的方法. seajs.config({ // 别名配置 ...

  6. Sea.js学习2——Sea.js的API 快速参考

    (7 个接口是最常用的) 一.seajs.config:用来对 Sea.js 进行配置. seajs.config({ // 设置路径,方便跨目录调用 paths: { 'arale': 'https ...

  7. Sea.js学习1——初识Sea.js

    Sea.js 是一个成熟的开源项目,核心目标是给前端开发提供简单.极致的模块化开发体验. 使用 Sea.js,在书写文件时,需要遵守 CMD (Common Module Definition)模块定 ...

  8. Sea.js学习5——Sea.js的构建工具spm

    如果项目遵循推荐的标准目录结构: foo-module/ |-- dist 存放构建好的文件 |-- src 存放 js.css 等源码 | |-- foo.js | `-- style.css `- ...

  9. JavaScript 的 MVP 框架 Riot.js

    Riot.js 详细介绍 Riot.js是一个客户端模型-视图-呈现(MVP)框架并且它非常轻量级甚至小于1kb.尽管他的大小令人难以置信,所有它能构建的有如下:一个模板引擎,路由,甚至是库和一个严格 ...

随机推荐

  1. npm 相关命令

    npm的相关命令 npm init -y : 产生一个package.json文件 npm install --save-dev  模块名     :   模块名会再package.json文件中的d ...

  2. 【Java每日一题】20170221

    20170220问题解析请点击今日问题下方的“[Java每日一题]20170221”查看(问题解析在公众号首发,公众号ID:weknow619) package Feb2017; public cla ...

  3. Java基础IO流(一)

    IO概念: 大多数应用程序都需要实现与设备之间的数据传输,例如键盘可以输入数据,显示器可以显示程序的运行结果等.在Java中,将这种通过不同输入输出设备(键盘,内存,显示器,网络等)之间的数据传输抽象 ...

  4. Elasticsearch系列(1):认识Elasticsearch

    官方定义 Elasticsearch 是一个实时的分布式搜索分析引擎, 它能让你以一个之前从未有过的速度和规模,去探索你的数据. 它被用作全文检索.结构化搜索.分析以及这三个功能的组合. Elasti ...

  5. Reinforcement Learning: An Introduction读书笔记(3)--finite MDPs

     > 目  录 <  Agent–Environment Interface Goals and Rewards Returns and Episodes Policies and Val ...

  6. 讲讲网络模块中加解密那点儿事--AES+BASE64

    本篇文章已授权微信公众号 dasuAndroidTv(大苏)独家发布 这次想来讲讲网络安全通信这一块,也就是网络层封装的那一套加密.解密,编码.解码的规则,不会很深入,但会大概将这一整块的讲一讲. 之 ...

  7. html之多行文本textarea 及下拉框select(12)

    1.多行文本 多行文本使用textarea标签,默认值需要写在中间,和input标签不同,name属性用于后台获取数据(request.POST.get(meno)) <body> < ...

  8. ABP问题速查表

    如果你领导要让你一夜之间掌握ABP,并且用ABP撸一个项目出来,你很可能很快速的过了一遍ABP文档就马上动手干活了.那么这篇文章就很适合你. 这篇文章列出了很多ABP新手问的问题和解答.注:有些同学问 ...

  9. Deep Learning - 2 反向传播

    深度神经网络的学习基于两个关键技术: Stochastic Gradient Descent Backpropagation 利用 SGD 算法学习 Weights 和 Biases,利用 Backp ...

  10. 自定义View类

    一.如何创建自定义的View类 ①.创建一个继承android.view.View类的Java类,并且重写构造方法(至少需要重写一个构造方法) ②.根据需要重写其他方法 ③.在项目的活动中,创建并实例 ...