first commit
This commit is contained in:
29
uni_modules/tdesign-uniapp/components/mixins/touch.js
Normal file
29
uni_modules/tdesign-uniapp/components/mixins/touch.js
Normal file
@@ -0,0 +1,29 @@
|
||||
const getDirection = (t, s) => (t > s && t > 10 ? 'horizontal' : s > t && s > 10 ? 'vertical' : '');
|
||||
export default {
|
||||
data() {
|
||||
return {};
|
||||
},
|
||||
methods: {
|
||||
resetTouchStatus() {
|
||||
this.direction = '';
|
||||
this.deltaX = 0;
|
||||
this.deltaY = 0;
|
||||
this.offsetX = 0;
|
||||
this.offsetY = 0;
|
||||
},
|
||||
touchStart(t) {
|
||||
this.resetTouchStatus();
|
||||
const [s] = t.touches;
|
||||
this.startX = s.clientX;
|
||||
this.startY = s.clientY;
|
||||
},
|
||||
touchMove(t) {
|
||||
const [s] = t.touches;
|
||||
this.deltaX = s.clientX - this.startX;
|
||||
this.deltaY = s.clientY - this.startY;
|
||||
this.offsetX = Math.abs(this.deltaX);
|
||||
this.offsetY = Math.abs(this.deltaY);
|
||||
this.direction = getDirection(this.offsetX, this.offsetY);
|
||||
},
|
||||
},
|
||||
};
|
||||
Reference in New Issue
Block a user