包 | mx.binding.utils |
类 | public class ChangeWatcher |
继承 | ChangeWatcher Object |
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
属性 | 由以下参数定义 | ||
---|---|---|---|
constructor : Object
对类对象或给定对象实例的构造函数的引用。 | Object | ||
useWeakReference : Boolean
确定对处理函数的引用是强还是弱。 | ChangeWatcher |
方法 | 由以下参数定义 | ||
---|---|---|---|
ChangeWatcher(access:Object, handler:Function, commitOnly:Boolean = false, next:ChangeWatcher = null)
构造函数。 | ChangeWatcher | ||
[静态]
允许您确定宿主是否在此属性上公开数据绑定事件。 | ChangeWatcher | ||
[静态]
返回宿主对象中可绑定属性的所有绑定事件。 | ChangeWatcher | ||
检索观察的属性或属性链的当前值,当宿主对象为空时此值为空。 | ChangeWatcher | ||
表示对象是否已经定义了指定的属性。 | Object | ||
表示 Object 类的实例是否在指定为参数的对象的原型链中。 | Object | ||
如果链中的每个观察器都连接了至少一个 change 事件,则返回 true。 | ChangeWatcher | ||
表示指定的属性是否存在、是否可枚举。 | Object | ||
重置此 ChangeWatcher 实例可使用新的宿主对象。 | ChangeWatcher | ||
设置处理函数。 | ChangeWatcher | ||
设置循环操作动态属性的可用性。 | Object | ||
返回此对象的字符串表示形式,其格式设置遵守区域设置特定的约定。 | Object | ||
返回指定对象的字符串表示形式。 | Object | ||
从当前宿主中断开此 ChangeWatcher 实例及其处理函数。 | ChangeWatcher | ||
返回指定对象的原始值。 | Object | ||
watch(host:Object, chain:Object, handler:Function, commitOnly:Boolean = false, useWeakReference:Boolean = false):ChangeWatcher [静态]
创建并启动 ChangeWatcher 实例。 | ChangeWatcher |
useWeakReference | 属性 |
public var useWeakReference:Boolean
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
确定对处理函数
的引用是强还是弱。强引用(默认值)可防止处理函数
被当作垃圾回收。弱引用则没有此作用。
默认值为 false。
ChangeWatcher | () | 构造函数 |
public function ChangeWatcher(access:Object, handler:Function, commitOnly:Boolean = false, next:ChangeWatcher = null)
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
构造函数。非公用。只能从 watch()
方法中调用此方法。有关参数用法,请参阅 watch()
方法。
access:Object | |
handler:Function | |
commitOnly:Boolean (default = false )
| |
next:ChangeWatcher (default = null )
|
canWatch | () | 方法 |
public static function canWatch(host:Object, name:String, commitOnly:Boolean = false):Boolean
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
允许您确定宿主是否在此属性上公开数据绑定事件。
注意:canWatch()
方法不支持属性链。watch()
方法支持属性链。
参数
host:Object — 属性的宿主。有关详细信息,请参阅 watch() 方法。
| |
name:String — 该属性的名称。有关详细信息,请参阅 watch() 方法。
| |
commitOnly:Boolean (default = false ) — 如果应仅在提交 change 事件时调用处理函数,则设置为 true 。有关详细信息,请参阅 watch() 方法。
|
Boolean — 如果 host 在 name 上公开了任何 change 事件,则为 true 。
|
getEvents | () | 方法 |
public static function getEvents(host:Object, name:String, commitOnly:Boolean = false):Object
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
返回宿主对象中可绑定属性的所有绑定事件。
参数
host:Object — 属性的宿主。有关详细信息,请参阅 watch() 方法。
| |
name:String — 属性或属性链的名称。有关详细信息,请参阅 watch() 方法。
| |
commitOnly:Boolean (default = false ) — 控制是否在返回值中包含不提交的 change 事件。
|
Object — { eventName: isCommitting, ... } 形式的对象,包含该属性的所有 change 事件。
|
getValue | () | 方法 |
isWatching | () | 方法 |
reset | () | 方法 |
setHandler | () | 方法 |
unwatch | () | 方法 |
public function unwatch():void
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
从当前宿主中断开此 ChangeWatcher 实例及其处理函数。您可以使用 reset()
方法重新连接 ChangeWatcher 实例,或在不同宿主对象上观察同一个属性或属性链。
watch | () | 方法 |
public static function watch(host:Object, chain:Object, handler:Function, commitOnly:Boolean = false, useWeakReference:Boolean = false):ChangeWatcher
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
创建并启动 ChangeWatcher 实例。一个 ChangeWatcher 实例可观察一个属性或一个属性链。属性链是可从宿主对象访问的一系列属性。例如,表达式 obj.a.b.c
中包含属性链 (a, b, c)。
参数
host:Object — 用于承载要监视的属性或属性链的对象。创建 ChangeWatcher 实例后,您可以使用 reset() 方法更改 host 参数的值。主机 维护当 prop 更改时要调用的处理函数 列表。
| |
chain:Object — 用于指定要监视的属性或属性链的值。合法值包括:
请注意:在 | |
handler:Function — 在修改观察属性(或观察链中任何属性)的值时调用的事件处理函数。如果观察器链中的任何宿主对象调度了在该宿主对象的 [Bindable] 元数据标记中为相应的观察属性指定的事件,则表明已经修改。默认事件名为 propertyChange 。
由可绑定属性调度的事件对象将传递到此处理函数,不会进行任何修改。默认情况下,Flex 将调度 PropertyChangeEvent 类型的事件对象。然而,在使用 | |
commitOnly:Boolean (default = false ) — 如果仅在提交 change 事件时需要调用处理函数,则设置为 true ;如果无论是否提交 change 事件都调用处理函数,则设置为 false 。请注意:属性是否存在不提交的 change 事件由 [NonCommittingChangeEvent(<event-name>)] 元数据标记来指示。通常,这些标记用于指示细化值更改,例如确认前在文本字段中进行的修改。
| |
useWeakReference:Boolean (default = false ) — (default = false) 确定对处理函数 的引用是强还是弱。强引用(默认值)可防止处理函数 被当作垃圾回收。弱引用则没有此作用。
|
ChangeWatcher — 如果已为 chain 参数至少指定了一个属性名称,则返回 ChangeWatcher 实例;否则返回 null。请注意,不能保证返回的监视程序已成功发现 change 事件并将自身附加到 change 事件,因为宿主可能没有在给定的属性或属性链上公开任何事件。您可以使用 isWatching() 方法来确定观察器的状态。
|
相关 API 元素
Tue Jun 12 2018, 11:04 AM Z