http://developer.51cto.com/art/201008/218597.htm
Flex数据绑定有很多值得学习的地方,这里向大家简单介绍一下Flex数据绑定的概念,当数据源对象发生改变时,目标对象的数据会自动更新,而不需要我们再编写代码去强制更新,这就是绑定的含义。
Flex数据绑定的概念
从字面上看,“绑定”表示将若干个物体捆绑在一起。使用Flex数据绑定时,Flex会把一个对象的数据复制,提供给另一个对象使用,提供数据一方的称为数据源对象,使用数据的一方称为目标对象,当数据源对象发生改变时,目标对象的数据会自动更新,而不需要我们再编写代码去强制更新,这就是绑定的含义。
Flex数据绑定的这个特性非常实用,当程序要处理大量数据,而且要保持数据的实时更新,保持数据同步往往会令开发者大费周折,如今不用为这类问题而发牢骚了。
实际上,绑定的实现也是借用事件机制来完成。当对目标使用了Flex数据绑定后,目标对象就会侦听数据源对象的某一固定事件,在以后的过程中,源对象发生变化时,数据源会派发改变事件,通知目标对象更新的数据。,(PHP博客,www.phpcq.com)只不过,这一事件流程都是由Flex自动处理。
绑定适用于各种类型的对象,只要参加绑定源对象的数据和目标对象的数据格式相同,就可以使用。下面几种情况中Flex数据绑定使用得比较频繁:
1,将webservice或remoting方式得到的Flex数据绑定给控件
2,把控件Flex数据绑定给后台通信的对象,发送给服务器端
3,后台返回数据和数据模型进行绑定
4,组件或对象属性的Flex数据绑定
在绑定中作为数据源对象,该对象必须支持绑定,也就是,对象有派发改变事件的能力。Flex的组件提供了绑定接口,当然,并不是组件所有的属性及方法都可以用来作为数据源,一般来说,组件的重要属性都可用来作为绑定中的数据源。
尽管Flex数据绑定功能非常强大,但并不是所有情况下都能使用,例如,有些情况下,数据的更新需要按照严格的先后顺序,不可同时更新,这时最好通过程序来设置数据改变。另外,一旦开始了绑定,每次源数据的改变都会导致目标对象的数据更新,而有时希望目标对象只在一定情况下才做出反应,,(PHP博客,www.phpcq.com)这时,绑定就不是一个好的解决办法。
分享到:
相关推荐
Flex是一种基于ActionScript 3.0的开源框架,主要用于构建富互联网应用程序(RIA)。它提供了丰富的用户界面组件和强大的数据绑定功能,使开发者能够创建出交互性极强的Web应用。在本项目中,我们将探讨如何使用Flex...
4. **Flex4新特性**:Flex4引入了Design in Mind的理念,更加注重设计思维与开发者生产力的提升,以及框架的持续进化,如改进的组件体系、增强的动画效果和更丰富的数据绑定能力。 #### Flex与Ajax的对比 虽然Flex...
6. **数据绑定**:Flex支持数据绑定,可以将组件属性与变量绑定,使得属性的改变自动反映到变量上。这在处理拖动位置时特别有用,可以实时更新组件的位置。 7. **ActionScript编程**:尽管Flex是基于MXML的声明式...
Flex Builder4可以创建几种不同的项目? - **答案**: - Flex Builder 3支持创建多种项目类型,包括Flex项目、SWC库项目等。 - Flex Builder 4同样支持多种项目类型,包括Flex项目、Flex Mobile项目、Adobe AIR...
2. **优化数据绑定**:避免使用实时数据绑定,考虑使用变更侦听器或者延迟数据绑定来降低性能开销。 3. **缓存位图**:对于频繁绘制的复杂组件,可以将其转换为位图并缓存,以提高渲染速度。 4. **使用SpriteSheet**...
总结来说,这款"聊天室(ActionScript 3.0实现)"项目涵盖了AS3.0编程、Flex框架应用、网络通信、事件处理、数据结构、UI设计等多个方面,对于学习和掌握AS3.0及其相关技术有着很好的实践价值。通过这个项目,开发者...
微信小程序是一种轻量级的应用开发平台,由腾讯公司推出,旨在提供便捷的、无需下载安装即可使用的应用体验。在这个平台上,开发者可以利用JavaScript、WXML(微信小程序标记语言)和WXSS(微信小程序样式语言)来...
2. **垂直居中的几种方式**: - 使用 Flexbox布局,设置`align-items: center;` - 使用 Grid布局,设置`align-items: center;` - 绝对定位,结合`top`和`bottom`或`transform`调整 - 使用`display: table-cell`...
2. 性能优化:合理使用setData,避免大量数据的频繁更新;利用wx.request的缓存功能提高加载速度。 3. 响应式布局:考虑到不同设备的屏幕尺寸,采用百分比布局或Flex布局,确保界面在不同设备上都能良好显示。 4. ...
- Angular 由 Google 开发,支持声明式的组件化编程模式,提供了强大的数据绑定和依赖注入功能。 - Vue 则以其简单易学著称,同时也支持组件化的开发方式,具有高度可定制性。 #### 函数调用中的 arguments 转换 ...
4. **使用缓存**:在进行大量计算或者重复获取数据时,合理使用缓存能够大幅提升性能。 5. **事件监听的优化**:采用事件委托来减少事件监听器的数量,避免在动态添加元素时重复绑定事件监听器。 通过本文的介绍和...