浏览 248 次
|
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
|---|---|
| 作者 | 正文 |
|
时间:2008-05-10
因为想尝试WebC/S的新架构模式,最近一直在研究用Ajax写客户端,研究纯客户端的MVC。
看到InfoQ上这篇关于SOFEA的文章(http://www.infoq.com/cn/news/2008/04/tsa-working-group-site)推荐,下了个JavaScriptMVC(http://javascriptmvc.com/)来看了看,发现纯客户端的MVC果然如我所料,比服务器端的MVC简单了不止是一点点,甚至比我想象中还要更简单。请看代码,这是一个最简单的例子: <div class='todo'>TODO: Learn JavaScriptMVC</div> 视图代码,来自index.html Controller('todos',{
mouseover: function(params){
params.element.style.backgroundColor = 'Green';
},
mouseout: function(params){
params.element.style.backgroundColor = '';
}
});
控制器代码,来自controllers/todos_controller.js 这就是控制器么,这有哪一点长得像Struts中的Action了?这不就是DHTML中的事件处理函数了么?然后转念一想,回忆一下以前用VB和Delphi编程时的情况,不正是如此么,都是先画好界面,然后从界面出发,定义各种事件处理方法。那里的控制器,不正是这样的事件处理方法么。其实Struts中的Action,也就是这样的事件处理方法,不过是在服务器上监听客户端的事件而已,因此才会增加了那么多复杂度。原来这个客户端的MVC,我们其实一直在用的,只是太普通了而忘记了这个概念而已,除非你完全不用JavaScript。 声明:JavaEye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
| 返回顶楼 | |
|
时间:2008-05-10
好东西
偶也是javascript做MVC的支持者. 这个很值得学习和研究. 看到人家已经走得很远了.很惭愧呀! 同时也很庆幸,可以省不少力气了. jmvc是apache 2.0 license 呵呵可以放心使用了. |
|
| 返回顶楼 | |
|
时间:2008-05-10
并且我对前台模板的写法有了新的想法:
流控语法标签 <code lang="前台模板" class="displaynone todelete"></code> 当然里面的lang的值是你规定的值了, class的值表示了浏览不显示且应该删除掉. |
|
| 返回顶楼 | |
|
时间:2008-05-10
粗略看了一下源代码发现,这个是个整合的方案,
不是完全原发,里面的版权比较复杂 有: Artistic license BSD license LGPL license MIT license 晕了. |
|
| 返回顶楼 | |




