MVC

2019-01-07  本文已影响0人  白羽薇

最初

增加结构

MVC

例:在Holla中发送一个新的聊天信息的过程:
1.用户提交一个新的聊天信息
2.控制器的事件处理器被触发
3.控制器创建了一个新的聊天模型(Chat Model)记录
4.控制器更新视图
5.用户在聊天窗口看到新的消息

MVC各部分具体详解如下:

模型

var user = User.find("foo");
user.destory();
destory()函数是存放在命名空间User的实例中,User存放了所有的记录(这只是理想情况),因为我们控制了全局变量的个数,更好的避免了潜在的冲突。这种代码更加清晰,而且非常容易做继承。

视图

//helper.js
var helper = {};
helper.formatData = function(){/*...*/};

//template.html
<div>
  ${helper.foematDate(this.date)}
</div>
helper是一个命名空间,可以防止冲突并保持代码清晰、可扩展

控制器

var Controller = {};
//使用匿名函数来封装一个作用域
(Controller.users = function($){

 var nameClick = function(){
/*...*/
};

//在页面加载时绑定事件监听
$(function(){
 $("#view.name").click(nameClick)
});

})(jQuery);
创建了一个user控制器,这个控制器是放在Controller变量下的命名空间。我们使用一个匿名函数封装了一个作用域,以避免对全局作用域造成污染。当页面加载时,程序给视图元素绑定了click事件的监听。
上一篇 下一篇

猜你喜欢

热点阅读