as学习笔记(二三)--关于数据驱动
sshong 发表于2008年7月11日 22:56:00 更新于2008年7月11日 22:56:00
所谓数据驱动,也就是后台有一个model,前台有一个view,由model驱动view进行显示。
在实践过程中,我一般的思路是在某view类中保存一个对驱动model的引用,有一个fresh方法就是根据这个引用的内容进行刷新显示。只要model有改变的地方,手工调用下fresh方法就可以做到驱动view。本想这样model内容一改变,view里的内容也会跟着改变,这样无需dispatch事件,就可以做到驱动。

结果今天终于发现了一个大大的错误了!如下图所示

一旦model的更改不是直接更改model原有内存中的内容,而是重新new了一个,这个时候model指向的内存和view的引用指向的内存是不一致的!!!而fresh动作还是根据原view引用来刷新,肯定会出错,所以在不清楚model更改是直接更改还是重新new情况下,要重新把model赋值给view,更新view的引用,再fresh,切记
标签:as数据驱动modelview分类:As3&Flex阅读:3387
评论
sshong2008年9月26日 16:15 回复
恩,这倒是一个解决方案,另外,模仿flex做一个数据绑定功能也是个好方法
过客2008年9月26日 15:50
model对象用单一实例
过客2008年9月26日 15:50
model对象用单一实例
添加评论
您的大名,限长10汉字,20英文(*)
电子信箱(*)
您的网站
正文,限长500汉字,1000英文(*)
验证码(*) 单击刷新验证码
联系我
博客订阅