Callback 回调方法

一般用于各种回调函数中为了携带执行域和参数
【使用方法】:
Callback.New(this.xxx,this,1,2,3);

维护人员:黑暗之神KDS
创建时间:2018-01-01

继承
子类

Public 属性

属性
EMPTY : Callback;
静态空的单一实例,一般用于必须回调中的空实现
caller : any;
调用者执行域
callbackFunc : Function;
回调方法
args : any;
回调参数

Public 方法

方法
run(): any
运行
runWith(addArgs : any): any
运行追加额外的参数 追加的参数在回调时总是在后面
delayRun(delay : number, delayFunc? : Function, args? : any): Callback
延迟执行
delayRunConver(delay : number, delayFunc? : Function, clearDelayFunc? : Function, args? : any): Callback
延迟执行,但会覆盖掉之前的延迟
stopDelay(clearDelayFunc? : Function): void
停止延期
New(callbackFunc : Function, caller : any, args? : any): Callback
静态新建回调对象,同new CallBack
CallLater(func : Function, caller : any, args? : any, delay? : number): void
静态延迟到下一帧执行,保证相同的方法和作用域只能执行一次,可用于优化效率
CallLaterBeforeRender(func : Function, caller : any, args? : any): void
静态延迟到下一次渲染时执行,保证相同的方法和作用域只能执行一次,可用于优化效率

详情

run

run(): any :

运行

参数
addArgs [可选] 默认值=null 追加的参数

runWith

runWith(addArgs : any): any :

运行追加额外的参数 追加的参数在回调时总是在后面

参数
addArgs  追加的参数

delayRun

delayRun(delay : number, delayFunc? : Function, args? : any): Callback :

延迟执行

参数
delay 延迟的ms数
delayFunc [可选] 默认值=null 延迟使用的函数,默认setTimeout,可更换,如setFrameout
args [可选] 默认值=null 参数
返回

Callback

delayRunConver

delayRunConver(delay : number, delayFunc? : Function, clearDelayFunc? : Function, args? : any): Callback :

延迟执行,但会覆盖掉之前的延迟

参数
delay 延迟的ms数
delayFunc [可选] 默认值=null 延迟使用的函数,默认setTimeout,可更换,如setFrameout
clearDelayFunc [可选] 默认值=null 清理的延迟函数,默认 clearTimeout,可更换,如setFrameout
args [可选] 默认值=null 参数
返回

Callback

stopDelay

stopDelay(clearDelayFunc? : Function): void :

停止延期

参数
clearDelayFunc [可选] 默认值=null 清理的延迟函数,默认 clearTimeout,可更换

New

New(callbackFunc : Function, caller : any, args? : any): Callback :

静态新建回调对象,同new CallBack

参数
callbackFunc 回调方法
caller 执行域
args [可选] 默认值=null 携带的参数
返回

Callback

CallLater

CallLater(func : Function, caller : any, args? : any, delay? : number): void :

静态延迟到下一帧执行,保证相同的方法和作用域只能执行一次,可用于优化效率
相同的方法和作用域调用此方法,只有第一次生效,其中args参数会替换成最近一次调用的参数
该方法可能在下一次渲染前也可能在下一帧渲染后执行,如果必须确定在下次渲染前就要执行可使用CallLaterBeforeRender
内部使用setTimeout-0ms实现

参数
func 执行的方法
caller 作用域
args [可选] 默认值=null 附带的参数
delay [可选] 默认值=0 延迟的ms

CallLaterBeforeRender

CallLaterBeforeRender(func : Function, caller : any, args? : any): void :

静态延迟到下一次渲染时执行,保证相同的方法和作用域只能执行一次,可用于优化效率
相同的方法和作用域调用此方法,只有第一次生效,其中args参数会替换成最近一次调用的参数

参数
func 执行的方法
caller 作用域
args [可选] 默认值=null 附带的参数

Copyright © 2021 - 2025