如何利用seajs进行JavaScript模块化开发与模块化加载?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1386个文字,预计阅读时间需要6分钟。
seajs 实现了 JavaScript 的模块开发及按模块加载。用于解决繁杂的 js 命名冲突、文件依赖等问题,其主要目的是让 JavaScript 开发模块化,并轻松愉快地进行加载。首先看看 seajs 是如何进行模块化的。
seajs实现了JavaScript 的 模块开发及按模块加载。用来解决繁琐的js命名冲突,文件依赖等问题,其主要目的是令JavaScript开发模块化并可以轻松愉悦进行加载。
首先看看seajs是怎么进行模块开发的。使用seajs基本上只有一个函数“define”
fn.define = function(id, deps, factory) { //code of function… }
使用define函数来进行定义一个模块,根据 CMD (Common Module Definition)模块定义规范。一个文件就是一个模块。所以一个js文件中只有一个define,即一个文件是一个模块,SeaJS中模块的概念有点类似于面向对象中的类——模块可以拥有数据和方法,数据和方法可以定义为公共或私有,公共数据和方法可以供别的模块调用。
官方实例中,define只传入一个参数: 一个工厂函数
define(function(require, exports, module) { //code of the module... });
在看参数之前,我们先看看define是如何处理参数的:
fn.define = function(id, deps, factory)
define可以接收的参数分别是模块ID,依赖模块数组及工厂函数;
如果只有一个参数,则赋值给factory。
如果有两个参数,第二个赋值给factory;第一个如果是array则赋值给deps,否则赋值给id。
如果有三个参数,则分别赋值给id,deps和factory。
本文共计1386个文字,预计阅读时间需要6分钟。
seajs 实现了 JavaScript 的模块开发及按模块加载。用于解决繁杂的 js 命名冲突、文件依赖等问题,其主要目的是让 JavaScript 开发模块化,并轻松愉快地进行加载。首先看看 seajs 是如何进行模块化的。
seajs实现了JavaScript 的 模块开发及按模块加载。用来解决繁琐的js命名冲突,文件依赖等问题,其主要目的是令JavaScript开发模块化并可以轻松愉悦进行加载。
首先看看seajs是怎么进行模块开发的。使用seajs基本上只有一个函数“define”
fn.define = function(id, deps, factory) { //code of function… }
使用define函数来进行定义一个模块,根据 CMD (Common Module Definition)模块定义规范。一个文件就是一个模块。所以一个js文件中只有一个define,即一个文件是一个模块,SeaJS中模块的概念有点类似于面向对象中的类——模块可以拥有数据和方法,数据和方法可以定义为公共或私有,公共数据和方法可以供别的模块调用。
官方实例中,define只传入一个参数: 一个工厂函数
define(function(require, exports, module) { //code of the module... });
在看参数之前,我们先看看define是如何处理参数的:
fn.define = function(id, deps, factory)
define可以接收的参数分别是模块ID,依赖模块数组及工厂函数;
如果只有一个参数,则赋值给factory。
如果有两个参数,第二个赋值给factory;第一个如果是array则赋值给deps,否则赋值给id。
如果有三个参数,则分别赋值给id,deps和factory。

