element-plus/packages/test-utils/make-scroll.ts
三咲智子 55348b30b6
style: use prettier ()
* style: use prettier

* style: just prettier format, no code changes

* style: eslint fix
object-shorthand, prefer-const

* style: fix no-void

* style: no-console
2021-09-04 19:29:28 +08:00

23 lines
489 B
TypeScript

import sleep from './sleep'
const makeScroll = async (
dom: Element,
name: 'scrollTop' | 'scrollLeft',
offset: number
) => {
const eventTarget = dom === document.documentElement ? window : dom
dom[name] = offset
const evt = new CustomEvent('scroll', {
detail: {
target: {
[name]: offset,
},
},
})
eventTarget.dispatchEvent(evt)
// must use setTimeout instead of nextTick to wait dom change
return await sleep()
}
export default makeScroll