MVC是什么?
MVC是一种设计模式
M是Module,是数据层 ,专门管理数据的地方
V是View,是视图层,操作界面及交互的地方
C是control,是控制器,其他操作封装在这里
let m = {
数据1,
数据2
}
let v = {
生成页面标签,
渲染到页面
}
let c = {
计算数据,
计算其他逻辑
}
EventBus 有哪些 API,是做什么用的?
on, 用来绑定事件
eventBus.on(事件1,回调函数1)
trigger,用来触发事件
eventBus.trigger(事件2)
off,解除绑定事件
eventBus.off(事件3)
表驱动编程
表驱动编程是利用数组的索引、表的key来访问对应的值的方式
代替—>
普通数据结构下,对数据做判断和筛选的方式
小于75分,就是差,大于75小于90时中等,大于90就是优
普通方式:
let a1 = '周一'
let a2 = '周二'
let a3 = '周三'
let a4 = '周四'
let a5 = '周五'
let a6 = '周六'
let a7 = '周日'
let day = 6
if(day == 1){
console.log(a1)
}...else if(dat==7){
console.log(a7)
}
表驱动方式:
let a = {1:'周一',2:'周二',3:'周三',4:'周四',5:'周五',6:'周六',7:'周日',}
let day = 6
console.log(a[day])
模块化
当程序越来越复杂,耦合度越高,越难以维护。这就需要模块化编程。
将一堆函数封装在一个对象中,就算是一个模块。将几个模块放在一个文件里,这个文件也是一个模块。
在vue里,就是以模块为单位来组合的,每一个模块都有html部分,css部分和js部分。
根据网上资料,有下面各种模块化方案
1 IIFE立即执行函数就是一个模块,函数作用域被封闭,不受外界影响。
2 AMD异步模块定义。require.js是AMD规范的实现。
3 CMD是用于浏览器端的模块化。支持动态引入依赖文件。
4 CommonJS,支持它的实现有Node,webpack。每个文件都是一个模块,有自己的作用域。
5 UMD,通用模块定义规范。可以让同一个代码模块在CommonJs,CMD,AMD项目中运行。
6 从ES6开始JavaScript原生支持模块化了。
模块化的好处,避免命名冲突、按需加载、高复用性、高可维护性。
资料来源:饥人谷