(improve)手势框架初始化时返回自身实例

This commit is contained in:
wangchangqi 2022-10-10 20:08:42 +08:00
parent 1fc4ab827c
commit 310a6bc5da
1 changed files with 5 additions and 8 deletions

View File

@ -1610,10 +1610,9 @@ export default class GestureDetector {
public static embedded<T extends EmbededGestureHTMLElement>(
el: T,
options?: GestureOptions
): T {
): GestureDetector {
if (el._addEventListener || el.gestureDetector) {
console.error(el + 'had been embedded!')
return el
throw new Error(el + 'had been embedded!')
}
el._addEventListener = el.addEventListener
@ -1656,13 +1655,12 @@ export default class GestureDetector {
})
el._addEventListener!.bind(this)(type, listener, options)
}
return el
return el.gestureDetector
}
public static disembedded<T extends EmbededGestureHTMLElement>(el: T): T {
public static disembedded<T extends EmbededGestureHTMLElement>(el: T) {
if (!(el._addEventListener && el.gestureDetector)) {
console.error(el + "can't be disembedded!")
return el
throw new Error(el + "can't be disembedded!")
}
el.cacheListeners?.forEach(({type, listener, options}) => {
el.removeEventListener(type, listener, options)
@ -1674,7 +1672,6 @@ export default class GestureDetector {
el.cacheListeners = []
delete el._addEventListener
delete el.gestureDetector
return el
}
private static _GestureDetectorId = 0