New file |
| | |
| | | let mpMixins = {} |
| | | // #ifdef APP-VUE|| MP-WEIXIN || H5 |
| | | import { |
| | | isPC |
| | | } from "./isPC" |
| | | mpMixins = { |
| | | data() { |
| | | return { |
| | | is_show: 'none' |
| | | } |
| | | }, |
| | | watch: { |
| | | show(newVal) { |
| | | this.is_show = this.show |
| | | } |
| | | }, |
| | | created() { |
| | | this.swipeaction = this.getSwipeAction() |
| | | if (this.swipeaction.children !== undefined) { |
| | | this.swipeaction.children.push(this) |
| | | } |
| | | }, |
| | | mounted() { |
| | | this.is_show = this.show |
| | | }, |
| | | methods: { |
| | | // wxs 中调用 |
| | | closeSwipe(e) { |
| | | if (!this.autoClose) return |
| | | this.swipeaction.closeOther(this) |
| | | }, |
| | | |
| | | change(e) { |
| | | this.$emit('change', e.open) |
| | | if (this.is_show !== e.open) { |
| | | this.is_show = e.open |
| | | } |
| | | }, |
| | | |
| | | appTouchStart(e) { |
| | | // #ifdef H5 |
| | | if (isPC()) return |
| | | // #endif |
| | | const { |
| | | clientX |
| | | } = e.changedTouches[0] |
| | | this.clientX = clientX |
| | | this.timestamp = new Date().getTime() |
| | | }, |
| | | appTouchEnd(e, index, item, position) { |
| | | // #ifdef H5 |
| | | if (isPC()) return |
| | | // #endif |
| | | const { |
| | | clientX |
| | | } = e.changedTouches[0] |
| | | // fixed by xxxx 模拟点击事件,解决 ios 13 点击区域错位的问题 |
| | | let diff = Math.abs(this.clientX - clientX) |
| | | let time = (new Date().getTime()) - this.timestamp |
| | | if (diff < 40 && time < 300) { |
| | | this.$emit('click', { |
| | | content: item, |
| | | index, |
| | | position |
| | | }) |
| | | } |
| | | }, |
| | | onClickForPC(index, item, position) { |
| | | // #ifdef H5 |
| | | if (!isPC()) return |
| | | this.$emit('click', { |
| | | content: item, |
| | | index, |
| | | position |
| | | }) |
| | | // #endif |
| | | } |
| | | } |
| | | } |
| | | |
| | | // #endif |
| | | export default mpMixins |