什么是前端模块化?

前端模块化

模块化: 是具有特定功能的一个对象( 广义理解 )
模块定义的流程:
1.定义模块(对象)
2.导出模块
3.引用模块
好处:可以存储多个独立的功能块,复用性高
种类:

  • AMD( require.js)
  • CMD ( sea.js )
  • Common.js

CommonJs用在服务器端,AMD和CMD用在浏览器环境
三者的一个详细介绍:https://www.jianshu.com/p/d67bc79976e6

AMD定义一个模块:使用define来定义,用require来使用模块

// AMD
/*
	目录
		admDir
			a.js
			index.js
*/
// AMD定义  a.js
    define ({
        a: 1,
        b: 2,
        add: function(){}
    })
// AMD引用 index.js
	require([./a.js],function( moduleA ){
        //moduleA指的就是定义来的对象
	})

CMD定义模块:使用define来定义,用require来使用模块

//CMD
/*
	目录结构
		b.js
		index.js
*/

// 模块定义  b.js
	define(function(require, exports, module) {

    	// 模块代码

    });
//模块引用 index.js
	require('./b.js',function( moduleB ){
        //moduleB就是b模块中导出的内容
	})

Common.js:
Node.js使用了Common.js的规范

易错的理解:
common.js是属于node的 ×
node属于common.js ×

//common.js
/*
	目录结构:
		name.js
		index.js
*/
//模块的定义 name.js
	const nameObj = {
        name: 'zhan san '
	}
//模块的导出  name.js
	module.exports = nameObj
//模块的引用
	const nameObj = require('./name.js')

Node.js中Common.js规范的使用有三种类型:
第一种:内置模块( 内置模块指的是挂载在Node.js全局对象身上的api )
内置模块可以直接使用 ( require中直接书写模块名称 )
格式:const/let/var 变量名 = require( 模块名称 )
第二种:自定义模块
1.模块的定义(创建模块)

//举例
const student = {
    id: 1,
    name: 'li si'
}
const fn = function(){}

2.模块的导出

// 第一种导出
module.exports = student // 安全性不高  默认导出一个
//第二种导出
module.exports = { //批量导出,按需引用
    student,fn
}

3.模块的引用

// 这种引用对应第一种导出
const student = require('./xxx.js')
// 这种引用对应第二种导出
const { student , fn } = require( './xxx.js ' )

注意:在自定义模块引用时,require一定要写好路径

第三种:第三方模块(别人封装好的模块)
格式:var/let/const 变量名 = require( 模块名称 )

$ npm init -y//创建package.json文件
//-D  === --save-dev 下载模块
//举例

cnpm  i  jquery -D  === cnpm i jquery --save-dev  // 开发环境下使用
cnpm i jquery -S ===  cnpm i jquery --save // 生产环境下使用
  1. 别人已经封装好的模块
  2. 这个模块具备一些特定的功能
  3. 这些模块存放在 www.npmjs.com 这个网站中
    这些模块的文档也记录在内

格式: var/let/const 变量名 = require( 模块名称 )

总结:
第一步,使用npm/cnpm 安装
第二步,在文件中引入
第三步,在www.npmjs.com这个网站中找到这个模块的文档,根据文档来使用

  • 1
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
智慧校园整体解决方案是响应国家教育信息化政策,结合教育改革和技术创新的产物。该方案以物联网、大数据、人工智能和移动互联技术为基础,旨在打造一个安全、高效、互动且环保的教育环境。方案强调从数字化校园向智慧校园的转变,通过自动数据采集、智能分析和按需服务,实现校园业务的智能化管理。 方案的总体设计原则包括应用至上、分层设计和互联互通,确保系统能够满足不同用户角色的需求,并实现数据和资源的整合与共享。框架设计涵盖了校园安全、管理、教学、环境等多个方面,构建了一个全面的校园应用生态系统。这包括智慧安全系统、校园身份识别、智能排课及选课系统、智慧学习系统、精品录播教室方案等,以支持个性化学习和教学评估。 建设内容突出了智慧安全和智慧管理的重要性。智慧安全管理通过分布式录播系统和紧急预案一键启动功能,增强校园安全预警和事件响应能力。智慧管理系统则利用物联网技术,实现人员和设备的智能管理,提高校园运营效率。 智慧教学部分,方案提供了智慧学习系统和精品录播教室方案,支持专业级学习硬件和智能化网络管理,促进个性化学习和教学资源的高效利用。同时,教学质量评估中心和资源应用平台的建设,旨在提升教学评估的科学性和教育资源的共享性。 智慧环境建设则侧重于基于物联网的设备管理,通过智慧教室管理系统实现教室环境的智能控制和能效管理,打造绿色、节能的校园环境。电子班牌和校园信息发布系统的建设,将作为智慧校园的核心和入口,提供教务、一卡通、图书馆等系统的集成信息。 总体而言,智慧校园整体解决方案通过集成先进技术,不仅提升了校园的信息化水平,而且优化了教学和管理流程,为学生、教师和家长提供了更加便捷、个性化的教育体验。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值