| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 | const MIN_DISTANCE = 10function getDirection(x, y) {    if (x > y && x > MIN_DISTANCE) {        return 'horizontal'    }    if (y > x && y > MIN_DISTANCE) {        return 'vertical'    }    return ''}export default {    methods: {        getTouchPoint(e) {            if (!e) {                return {                    x: 0,                    y: 0                }            } if (e.touches && e.touches[0]) {                return {                    x: e.touches[0].pageX,                    y: e.touches[0].pageY                }            } if (e.changedTouches && e.changedTouches[0]) {                return {                    x: e.changedTouches[0].pageX,                    y: e.changedTouches[0].pageY                }            }            return {                x: e.clientX || 0,                y: e.clientY || 0            }        },        resetTouchStatus() {            this.direction = ''            this.deltaX = 0            this.deltaY = 0            this.offsetX = 0            this.offsetY = 0        },        touchStart(event) {            this.resetTouchStatus()            const touch = this.getTouchPoint(event)            this.startX = touch.x            this.startY = touch.y        },        touchMove(event) {            const touch = this.getTouchPoint(event)            this.deltaX = touch.x - this.startX            this.deltaY = touch.y - this.startY            this.offsetX = Math.abs(this.deltaX)            this.offsetY = Math.abs(this.deltaY)            this.direction =				this.direction || getDirection(this.offsetX, this.offsetY)        }    }}
 |