MVC
模块化的本质是归纳优化代码。MVC是一种软件设计模式,发源于后端MVC,后来又基于AJAX技术,衍生出了前端MVC。
- Model 负责数据相关的任务:
const m = {
data: null,
create() {},
delete() {},
update() {},
get() {}
}
- View 负责用户界面:
const v = {
el: null, //页面元素
html: '', //显示页面的内容
init() {}, //v.el元素...初始化
render() {} //渲染
}
- Control 负责呈现数据
const c = {
init() {}
events: {},
add() {},
minus() {},
mul() {},
div() {},
autoBindEvents() {}
}
EventBus API
eventBus 主要用于简化对象间的通信。 使用 eventBus 可以满足最小知识原则,让作用的组件即使互相不知道对方的细节,但是却可以调用对方的功能。常用的API:
import $ from 'jquery'
class EventBus {
constructor(){ this._eventBus = $(window) }
on(eventName,fn){ return this._eventBus.on(eventName,fn) } //监听事件
trigger(eventName,data){ return this._eventBus.trigger(eventName,data) } //触发事件
off(eventName,fn){ return this._eventBus.off(eventName,data) } //取消事件
}
export default EventBus
表驱动编程
- 表驱动是一种在编程中的方法
- 逻辑简单时,用逻辑语句;
- 逻辑复杂时,在哈希表里查找信息。