码迷,mamicode.com
首页 > Web开发 > 详细

非常简单的js双向数据绑定框架(三):js model黑科技

时间:2015-06-11 13:04:27      阅读:156      评论:0      收藏:0      [点我收藏+]

标签:model   javascript   mvvm   双向数据绑定   

初衷

之前我们要在js域更新model,需要这样:

model.set(‘name‘, ‘sub‘);

这实在太土了。。。
我们希望像angularjs一样,直接:

$scope.name = ‘sub‘;

然后bong, 视图就会更新!这样的黑科技必定是极好的。

目标

  1. 完成model更新黑科技
  2. 200行以内完成

实现

今次主要借鉴avalon“劫持”setter,getter的方法,链接:avalon简化版解读

虽说是简化过的avalon,还是挺难读的。
整理下思路,主要两大点:
1. vm对象 –> vModel对象,劫持vm各个属性的set,get方法
2. scanTag() –> 遍历dom树找关键字,去vModel找求值函数,注册到订阅者列表

其中去vModel这一点不是很清楚,这几天一定要搞清,自己mock一个出来

非常简单的js双向数据绑定框架(三):js model黑科技

标签:model   javascript   mvvm   双向数据绑定   

原文地址:http://blog.csdn.net/vctisildur/article/details/46454755

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!