12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 |
- 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
|