watchUtils
用于监视访问器属性的各种实用工具和方便函数。
方法概述
- init():监视属性的更改并使用属性的初始值调用回调。
- on():监视属性的更改,并根据需要自动将给定事件的事件处理程序附加和分离到属性值。
- once():监视属性的更改一次。
- pausable():监视属性的更改。
- watch():监视属性的更改。
- when():监视一个属性实现。
- whenDefined():当监视属性是否已定义。
- whenDefinedOnce():当查看属性是否已定义一次。
- whenEqual():当监视属性是否与给定值相等。
- whenEqualOnce():当监视属性是否与给定值相等。
- whenFalse():当监视属性变成false。
- whenFalseOnce():监视属性变成false的一次。
- whenNot():监视属性变falsy。
- whenNotOnce():查看属性是否有问题。
- whenOnce():观察属性变成真实的一次。
- whenTrue():观察属性成为true。
- whenTrueOnce():监视属性变成true的一次。
- whenUndefined():监视属性是否变为未定义。
- whenUndefinedOnce():查看属性是否变为未定义一次。
方法详情
- init(obj, propertyName, callback):监视属性的更改并使用属性的初始值调用回调。参数
- obj :包含要监视的属性的对象。
- propertyName :要监视的属性的名称。
- callback :当属性更改时,要使用属性的初始值调用的函数。
- on(obj, propertyName, eventName, eventHandler, attachedHandler, detachedHandler):监视属性的更改,并根据需要自动将给定事件的事件处理程序附加和分离到属性值。attachedHandler和detachedHandler是可选的,如果提供,它们将分别在附加和分离事件处理程序时被调用。参数
- obj :包含要监视的属性的对象。
- propertyName :要监视的属性的名称。
- eventName :附加事件处理程序的事件名称。
- eventHandler :事件处理程序回调函数。
- attachedHandler :每次附加事件处理程序时调用的回调。
- detachedHandler :每次分离事件处理程序时调用的回调。
- once(obj, propertyName, callback):监视属性初次更改。在第一次调用回调后,返回的监视操作将被删除。返回的操作额外实现了Promise接口,并可用于创建Promise链来异步处理属性值变为真值。promise结果是一个包含value、oldValue、propertyName和target的对象。参数
- obj :包含要监视的属性的对象。
- propertyName :要监视的属性的名称。
- callback :属性更改时要调用的函数。
- pausable(obj, propertyName, callback):监视属性的变化。可以暂停(并恢复)返回的操作,以临时阻止在属性更改时调用回调函数。参数
- obj :包含要监视的属性的对象。
- propertyName :要监视的属性的名称。
- callback :属性更改时要调用的函数。
- watch(obj, propertyName, callback):监视属性的变化。这是access .watch()的别名,是为了完整性而提供的。参数
- obj :包含要监视的属性的对象。
- propertyName :要监视的属性的名称。
- callback :属性更改时要调用的函数。
- when(obj, propertyName, callback):监视属性实现。与watchUtils一样,如果属性实现,回调函数将被初始调用。参数
- obj :包含要监视的属性的对象。
- propertyName :要监视的属性的名称。
- callback :属性更改时要调用的函数。
- whenDefined(obj, propertyName, callback):看一个属性成为defined。与init()一样,如果属性最初定义,则调用回调。参数
- obj :包含要监视的属性的对象。
- propertyName :要监视的属性的名称。
- callback :属性更改时要调用的函数。
- whenDefinedOnce(obj, propertyName, callback):一旦监视属性实现。与init()一样,如果属性最初定义,则调用回调。在第一次调用回调后,返回的监视操作将被删除。返回的操作额外实现了Promise接口,并可用于创建Promise链来异步处理即将定义的属性值。promise结果是一个包含value、oldValue、propertyName和target的对象。参数
- obj :包含要监视的属性的对象。
- propertyName :要监视的属性的名称。
- callback :属性更改时要调用的函数。
- whenEqual(obj, propertyName, value, callback):监视给定属性的值等于所提供的值。给定属性的值等于所提供的值时,回调函数将触发。参数
- obj :包含要监视的属性的对象。
- propertyName :要监视的属性的名称。
- value :要用给定属性的值进行测试的值。
- callback :当属性等于给定值时调用的函数。
watchUtils.whenEqual(slider, "values.0", 50, function(){
});
watchUtils.whenEqual(slider, "state", "dragging", function(){
});
- whenEqualOnce(obj, propertyName, value, callback):监视与给定值相等的一种属性。当给定的属性第一次等于给定的值时,回调函数将触发。在第一次调用回调后,返回的监视操作将被删除。返回的操作额外实现了Promise接口,并可用于创建Promise链来异步处理变为false的属性值。promise结果是一个包含value、oldValue、propertyName和target的对象。参数
- obj :包含要监视的属性的对象。
- propertyName :要监视的属性的名称。
- value :要用给定属性的值进行测试的值。
- callback :当属性等于给定值时调用的函数。
watchUtils.whenEqualOnce(slider, "state", "disabled", function(){
});
- whenFalse(obj, propertyName, callback):监视属性变成false。与init()一样,如果属性初始值为false,则调用回调。参数
- obj :包含要监视的属性的对象。
- propertyName :要监视的属性的名称。
- callback :属性更改时要调用的函数。
- whenFalseOnce(obj, propertyName, callback):监视属性变false一次。与init()一样,如果属性初始值为false,则调用回调。在第一次调用回调后,返回的监视操作将被删除。返回的操作额外实现了Promise接口,并可用于创建Promise链来异步处理变为false的属性值。promise结果是一个包含value、oldValue、propertyName和target的对象。参数
- obj :包含要监视的属性的对象。
- propertyName :要监视的属性的名称。
- callback :属性更改时要调用的函数。
- whenNot(obj, propertyName, callback):监视一个属性成为falsy。与watchUtils一样,如果属性成为falsy,回调函数也会被初始调用。参数
- obj :包含要监视的属性的对象。
- propertyName :要监视的属性的名称。
- callback :属性更改时要调用的函数。
- whenNotOnce(obj, propertyName, callback):一旦监视属性变成假的。与init()一样,如果属性一开始是错误的,就会调用回调。返回的监视操作在第一次调用回调后被删除。返回的错误另外实现了Promise接口,并可用于创建Promise链来异步地处理变假的属性值。promise结果是一个包含value、oldValue、propertyName和target的对象。参数
- obj :包含要监视的属性的对象。
- propertyName:要监视的属性的名称。
- callback :属性更改时要调用的函数。
- whenOnce(obj, propertyName, callback):监视财属性成真实的一次。与init()一样,如果属性一开始是真实的,就会调用回调。返回的监视操作在第一次调用回调后被删除。返回的操作另外实现了Promise接口,并可用于创建Promise链来异步处理属性值变为true。promise结果是一个包含value、oldValue、propertyName和target的对象。参数
- obj :包含要监视的属性的对象。
- propertyName :要监视的属性的名称。
- callback :属性更改时要调用的函数。
- whenTrue(obj, propertyName, callback):监视一个属性成为true。与init()一样,如果属性一开始为真,就会调用回调。参数
- obj :包含要监视的属性的对象。
- propertyName :要监视的属性的名称。
- callback :属性更改时要调用的函数。
- whenTrueOnce(obj, propertyName, callback):监视一个属性变成true。与init()一样,如果属性一开始为真,就会调用回调。返回的监视操作在第一次调用回调后被删除。返回的操作另外实现了Promise接口,并可用于创建Promise链来异步地处理变为true的属性值。promise结果是一个包含value、oldValue、propertyName和target的对象。参数
- obj :包含要监视的属性的对象。
- propertyName :要监视的属性的名称。
- callback :属性更改时要调用的函数。
- whenUndefined(obj, propertyName, callback):监视一个属性变成undefined。与init()一样,如果属性最初未定义,则调用回调。参数
- obj :包含要监视的属性的对象。
- propertyName :要监视的属性的名称。
- callback :属性更改时要调用的函数。
whenUndefinedOnce(obj, propertyName, callback):监视一个属性变成undefined一次。与init()一样,如果属性最初未定义,则调用回调。返回的监视操作在第一次调用回调后被删除。返回的操作另外实现了Promise接口,并可用于创建Promise链来异步地处理变成undefined的属性值。promise结果是一个包含value、oldValue、propertyName和target的对象。参数
obj :包含要监视的属性的对象。
propertyName :要监视的属性的名称。
callback :属性更改时要调用的函数。
类型定义
- EventAttachedCallback(target, propName, obj, eventName):附加或分离事件处理程序时调用的回调。参数
- target :附加事件操作的目标对象。
- propName :监视的属性。
- obj :监视的对象。
- eventName :事件的名称。
- PausableWatchHandle:表示在对象调用watch()时创建的监视。属性
- remove :移除监视操作。
- pause :暂停操作,防止更改调用相关的回调。
- resume :恢复暂停的操作。
var handle = watchUtils.pausable(map, 'basemap', function(newVal){
// 每次地图底图值变化会被宰控制台打印出来。
console.log("new basemap: ", newVal);
});
// 当在监视操作上调用pause()时,由
监视不再被调用,但仍可供以后使用
handle.pause();
// 当在监视操作上调用resume()时,回调将继续
每次被监视的属性更改时触发。
handle.resume();
// 当在监视操作上调用remove()时,地图不再监视basemap的变化
handle.remove();
- PromisedWatchHandle:表示实现Promise接口的监视,该接口是在使用任何watchOnce实用程序函数时创建的。属性
- remove :移除监视操作。
- catch :添加在promise 被拒绝时调用的回调。
- then :添加要在解析promise 时调用的回调。
watchUtils.whenOnce(view, "ready")
.then(function(result) {
return view.map.layers.getItemAt(0).load();
})
.then(function(layer) {
return view.goTo(layer.fullExtent);
})
.then(function() {
console.log("Animation to first layer extent is finished");
});
版权声明:
作者:Gomo
链接:https://www.develophm.com/index.php/watchutils/953/
来源:开发之家
文章版权归作者所有,未经允许请勿转载。
THE END
二维码
共有 0 条评论