MVC知多少

1.MVC 三个对象分别做什么,给出伪代码示例
  • M:model(模型) 负责操作数据与服务器的交互,将请求到的数据传给control
  • V:View (视图) 负责所有UI界面,比如el,templete,render
  • C:controller(控制器)负责其他,比如初始化和事件,负责监听和处理View事件,并更新和调用 Model,负责监听Model数据变化,并更新View
/** 模擬 Model, View, Controller */
var M = {}, V = {}, C = {};

/** Model 負責存放資料 */
M.data = "hello world";

/** View 負責將資料輸出到螢幕上 */
V.render = (M) => { alert(M.data); }

/** Controller 作為一個 M 和 V 的橋樑 */
C.handleOnload = () => { V.render(M); }

/** 在網頁讀取的時候呼叫 Controller */
window.onload = C.handleOnload;

const m={
  data={},
  create(){},
  delete(){},
  update(){},
  get(){}
}

const v={
  el:null,
  html:`代码`,
  init(container){
    v.el=$(container)
  },
  render(n){}
}

const c={
  init(constainer){}
  events:{事件}
  add(){执行}
  minus(){执行}
  update(){执行}
  get(){执行}
  autoBindEvents(){逻辑}
}
2.EventBus 有哪些 API,是做什么用的,给出伪代码示例
_self.getEventBus
	方法:getEventBus:function(){}
	描述:直接返回前端EventBus对象,不推荐直接使用。
	
_self.subscribeEvent
	方法:subscribeEvent:function(event,fn,pointcut){}
	描述:注册事件,并指定实现方法和插入点
	参数:event:字符串形式事件名,命名规则为Event或ActionEvent结尾
	      fn:实现方法
	      插入点类型:after、overwrite、before
	      
_self.unSubscribeEvent
	方法:unSubscribeEvent:function(event){}
	描述:取消注册事件
	参数:event:字符串形式事件名,命名规则为Event或ActionEvent结尾
	
_self.fireEvent
	方法:fireEvent:function(event){}
	描述:触发某个具体事件,执行这个事件对于的实现方法队列
	参数:event:字符串形式事件名,命名规则为Event或ActionEvent结尾
	其他参数:可以增加一些后续参数
	
Handler实现说明:
	参数:接收fireEvent方法传递过来的参数
	特殊参数e:只有按钮绑定的页面功能才有值,手工调用不会有e的。页面功能代码生成时,默认会生成这个e,值为jquery.event
	返回值:无返回值的处理,只能通过返回值确定是否继续执行后续的方法队列
	        true/无:继续执行后续的实现方法队列
	        false:停止执行后续的实现方法队列    
	        其他:返回true
	Handle队列中数据的传递:只能利用页面的全局变量,本身没有提供处理机制
3.表驱动编程是做什么的

Table-Driven Approach

解决if else面对多种情况的情形,以表的形式进行获取数据,通过下标索引来查

methods{
  add(){执行}
  delete(){执行}
  minus(){执行}
  ...
}
4.我是如何理解模块化的

模块化就是把一个模块的代码放在一个文件夹里,再进行引入,简化了代码之间的影响

let string=`内容`
import default string//导出

import $ from `string`//引入
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值