新航路师徒学院

 找回密码
 立即注册
搜索
查看: 361|回复: 0

【新航路】seajs 快速上手

[复制链接]

80

主题

114

帖子

560

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
560
发表于 2016-8-31 12:39:01 | 显示全部楼层 |阅读模式
  1. 目录结构

  2. 所有源码都存放在 GitHub 上:seajs/examples,目录结构为:

  3. examples/
  4.   |-- sea-modules      存放 seajs、jquery 等文件,这也是模块的部署目录
  5.   |-- static           存放各个项目的 js、css 文件
  6.   |     |-- hello
  7.   |     |-- lucky
  8.   |     `-- todo
  9.   `-- app              存放 html 等文件
  10.         |-- hello.html
  11.         |-- lucky.html
  12.         `-- todo.html
  13. 我们从 hello.html 入手,来瞧瞧使用 Sea.js 如何组织代码。

  14. 在页面中加载模块

  15. 在 hello.html 页尾,通过 script 引入 sea.js 后,有一段配置代码:

  16. // seajs 的简单配置
  17. seajs.config({
  18.   base: "../sea-modules/",
  19.   alias: {
  20.     "jquery": "jquery/jquery/1.10.1/jquery.js"
  21.   }
  22. })

  23. // 加载入口模块
  24. seajs.use("../static/hello/src/main")
  25. sea.js 在下载完成后,会自动加载入口模块。页面中的代码就这么简单。

  26. 模块代码

  27. 这个小游戏有两个模块 spinning.js 和 main.js,遵循统一的写法:

  28. // 所有模块都通过 define 来定义
  29. define(function(require, exports, module) {

  30.   // 通过 require 引入依赖
  31.   var $ = require('jquery');
  32.   var Spinning = require('./spinning');

  33.   // 通过 exports 对外提供接口
  34.   exports.doSomething = ...

  35.   // 或者通过 module.exports 提供整个接口
  36.   module.exports = ...

  37. });
  38. 上面就是 Sea.js 推荐的 CMD 模块书写格式。如果你有使用过 Node.js,一切都很自然。
复制代码


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

新航路师徒学院 ( 京ICP备16035622号

GMT+8, 2018-7-22 05:05 , Processed in 0.146427 second(s), 24 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表