seaJs的简单应用
- sea.js的应用
模块化:
将Js代码按模块化分开,提高了代码的重用性;
seaJs的好处:
解决了文件的依赖
解决了变量名的冲突
seaJs的使用
1、定义模块
define(function(require,exports,module)){
require:引入一个模块
如:var _msg = require("msg");- exports:输出一个模块
如:exports.msg = function(){
alert("ok");
}- module:批量输出模块(很少用)
}
2、使用一个模块
seajs.use("模块名",function(mod){
//code
})
使用多个模块
seajs.use(["a","b",···],function(mod1,mod2···){})- 效果:添加一个人的姓名,年龄和通讯方式
框架:
html代码:
- <!DOCTYPE html>
- <html>
- <head lang="en">
- <meta charset="UTF-8">
- <title>SeaJs Test</title>
- <script src="../js/sea.js"></script>
- <script>
- seajs.use("init",function(init){
- init.init();
- })
- </script>
- </head>
- <body>
- <div class="main">
- <h1>信息</h1>
- <ul>
- <li id="s1"></li>
- <li id="s2"></li>
- <li id="s3"></li>
- </ul>
- </div>
- </body>
- </html>
- init.js代码:
- define(function(require,exports,module){
- var man = require("man");
- var css = require("../css/main.css");
- var $ = function(id){
- return document.getElementById(id);
- };
- exports.init = function(){
- var s1 = $("s1");
- var s2 = $("s2");
- var s3 = $("s3");
- var name = man.getName();
- var age = man.getAge();
- var msg = man.say();
- s1.innerHTML = name;
- s2.innerHTML = age;
- s3.innerHTML = msg;
- }
- })
- man.js代码:
- define(function(require,exports,module){
- var msg = require("msg");
- var _name = "tom";
- var _age = "20";
- exports.myName = _name;
- exports.say = function(){
- return msg.getMsg();
- };
- exports.getName = function(){
- return _name;
- };
- exports.getAge = function(){
- return _age;
- }
- })
- msg.js代码:
- define(function(require,exports,module){
- var _msg = "not set msg!";
- exports.setMsg = function(msg){
- _msg = msg;
- }
- exports.getMsg = function(){
- return _msg;
- }
- });
seaJs的简单应用的更多相关文章
- 快速上手seajs——简单易用Seajs
快速上手seajs——简单易用Seajs 原文 http://www.cnblogs.com/xjchenhao/p/4021775.html 主题 SeaJS 简易手册 http://yslo ...
- 简单的使用Seajs
什么是Seajs Seajs是一个加载器 http://yslove.net/seajs/ 遵循 CMD 规范模块化开发,依赖的自动加载.配置的简洁清晰. 兼容性 Chrome 3+ Firefox ...
- seajs简单使用
背景:在做一个功能时需要用到一个JS库,但是这个库比较大,想要在只有用到这个功能时再去加载这个库. <script src="~/Scripts/jquery-1.10.2.min.j ...
- 深入seajs源码系列一
简述 前端开发模块化已经是大势所趋,目前模块化的规范有很多,众所周知的有commonJS,Module/Wrappings和AMD等,而且ES6也着手开始制定模块化机制的实现.类似于c/c++的inc ...
- SeaJS入门篇一 怎么使用query
研究了2个多小时,终于搞定引入jq 1.写个html页面 <h1>ddddddddd</h1> <script src='/Scripts/dist/sea.js'> ...
- seajs快速了解
详情请点击原文 SeaJS是一个遵循CommonJS规范的JavaScript模块加载框架,可以实现JavaScript的模块化开发及加载机制.与jQuery等JavaScript框架不同,S ...
- seajs 和spm的使用简介
说实话, 前端开发是一个令人头痛的事情. nodejs出现了很久了, 一直不是很习惯用nodejs, 当初刚出来的时候, 就下载了express, 想搭建个网站, 结果不是我的菜, 愣是用的不习惯,也 ...
- Seajs教程
API 快速参考 该页面列举了 Sea.js 的常用 API.只要掌握这些用法,就可以娴熟地进行模块化开发. seajs.config 用来对 Sea.js 进行配置. seajs.config({ ...
- seaJS简介和完整实例
什么是 seaJS ? 和requireJS相似的,seaJS 也是用JavaScript编写的JS框架,主要功能是可以按不同的先后依赖关系对 JavaScript 等文件的进行加载工作,可简单理解为 ...
随机推荐
- PS与TOP详解
一:ps ps -l 查看属于自己这次登录的PID与相关信息列出来(只与自己的bash有关) F:代表这个进程标志(process flags),说明这个进程的权限,常见号码有: 若为4表示此进程的 ...
- Hibernate 随记(数据库映射流程)
ORM:Object/Relationship Mapping 对象/关系映射 实现流程: 1.项目中导入Hibernate相关类包并创建配置文件.Hibernate.cfg.xml(可 ...
- ln 软硬链接
链接 在谈软链接与硬链接之前,先来说说文件系统基础知识. Linux 系统中,一切皆文件. 文件包含两部分:文件属性与权限(inode),文件内容(data-block). 一个文件可由1个inode ...
- ASP.NET Core (Database First)
CREATE DATABASE [EFCore_dbfirst] GO USE [EFCore_dbfirst] GO CREATE TABLE [Blog] ( [BlogId] int NOT N ...
- 9本java程序员必读的书(附下载地址)
本文列出的9本书在Java程序员界都是被认为很棒的书.当一个程序员开始初学Java时,他的第一个问题应该是如何选择一本书来作为指导学习Java.这个问题也就表明,相对于其他的教程和博客,Java书籍还 ...
- Android——黑名单
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android=&quo ...
- Java & Android Color-Background
int i = Color.parseColor("#FFFFFF"); int j = Color.rgb(255,255,255); 1.SetBackground(Drawa ...
- UVA 1395 (kruskal)
/* 最大路与最小路的问题: 这道题看似简单,但是若不知道思路将无法写出. 思路:最小生成树很容易求出,但是最大值与最小值只差很难保证是最小的, 比如:1 5 5 6 100 101 很明显101 - ...
- 关于javascript中闭包的理解
闭包就是能够读取其他函数内部变量的函数. 在javascript中,只有函数内部的子函数可以读取局部变量,因此,我理解闭包就是定义在一个函数内部的函数. 例子: var f1 = function() ...
- 【转】Java出现No enclosing instance of type E is accessible. Must qualify the allocation with an enclosing
最近在看Java,在编译写书上一个例子时,由于书上的代码只有一部分,于是就自己补了一个内部类.结果编译时出现:No enclosing instance of type E is accessible ...