Flex数据绑定陷阱

开发 后端
本文介绍一下Flex数据绑定的陷阱,当构建Flex或者Adobe AIR程序时,将一个对象的值自动的传递给另一个对象这种处理是Flex数据绑定最常用并最有用的特征之一。

本文和大家重点讨论一下Flex数据绑定陷阱,Usingbindinginplaceofdirectassignment在直接赋值的地方使用绑定,但有一种情况就是你可以不使用绑定,使用直接赋值就可以成功实现同样效果的话,你***不要使用绑定。

Flex数据绑定陷阱

◆Usingbindinginplaceofdirectassignment在直接赋值的地方使用绑定

有一种情况,就是你可以不使用绑定,使用直接赋值就可以成功实现同样效果的话,你***不要使用绑定。我已经看到过很多形式的这类型错误了。

下面的代码就可以说明:

  1. <?xmlversionxmlversion="1.0"encoding="utf-8"?> 
  2.  
  3. <s:Applicationxmlns:fxs:Applicationxmlns:fx="http://ns.adobe.com/mxml/2009" 
  4.  
  5. xmlns:s="library://ns.adobe.com/flex/spark" 
  6.  
  7. minWidth="1024"minHeight="768"> 
  8.  
  9. <fx:Script> 
  10.  
  11. <![CDATA[  
  12.  
  13. privatevartext:String;  
  14.  
  15. ]]> 
  16.  
  17. </fx:Script> 
  18.  
  19. <s:layout> 
  20.  
  21. <s:VerticalLayout/> 
  22.  
  23. </s:layout> 
  24.  
  25. <s:TextInputids:TextInputid="textInput2"text="{text}"/> 
  26.  
  27. </s:Application> 

这段代码中定义了一个文本输入框,将私有成员变量绑定到这个文本输入框的text属性上。它看起来无害,对不对?我经常看到Flex应用程序中使用这些类型的标签。Flex的编译器会自动生成代码来实现Flex数据绑定。

你会发现,尽管你不需要绑定text字符串,因为它是一次性赋值的,但是编译器仍然会生成代码,来适应属性Flex数据绑定的条件。另外,有些情况下你需要在赋值后解除绑定,或是移出绑定代码来减少开销,但是你在MXML中使用<mx:Binding>标签后将不能这样做。

作为一个经验法则,应避免使用绑定到一个私有变量。

在上面的例子中,你可以直接给输入文本框设置值。

  1. <s:TextInputids:TextInputid="textInput2"text="sometextgoeshere"/> 

当你使用直接赋值时,你会大大减少你的开销,因为编译器不再会生成你不需要的绑定代码。作为一个通用的经验法则,不要使用Flex数据绑定,除非你绑定的值可能或肯定会改变。
 

【编辑推荐】

  1. Flex数据绑定中难以发现的无声错误
  2. Flex2.0Beta1新功能出炉
  3. Flex数据绑定中常见的误用和错误
  4. Flex数据绑定技巧
  5. 剖析Flex DataGrid分页控件的两种分页形式用法

 

 

责任编辑:佚名 来源: csdn.net
相关推荐

2010-07-28 13:11:13

Flex数据绑定

2010-08-05 15:06:19

Flex数据绑定

2010-07-30 09:08:21

Flex数据绑定

2010-08-12 11:34:15

Flex数据绑定

2010-08-10 10:56:39

2010-07-28 13:40:44

Flex数据绑定

2010-08-05 09:27:03

Flex应用

2010-07-30 10:45:08

Flex数据绑定

2010-07-30 09:16:24

Flex数据绑定

2010-07-30 10:23:46

Flex数据绑定

2010-07-30 10:53:53

Flex数据绑定

2010-07-28 13:48:49

Flex数据绑定

2010-08-12 11:05:33

Flex数据绑定

2010-07-30 10:30:58

Flex数据绑定

2010-07-28 13:54:42

Flex数据绑定

2010-08-06 10:15:35

Flex绑定

2010-08-13 14:19:44

Flex绑定机制

2010-08-12 10:43:19

Flex数据绑定

2010-07-30 09:28:09

Flex数据绑定

2010-07-28 13:24:20

Flex数据绑定
点赞
收藏

51CTO技术栈公众号