| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697 | export default {	data() {		return {			position: [],			button: []		}	},	computed: {		pos() {			return JSON.stringify(this.position)		},		btn() {			return JSON.stringify(this.button)		}	},	watch: {		show(newVal) {			if (this.autoClose) return			let valueObj = this.position[0]			if (!valueObj) {				this.init()				return			}			valueObj.show = newVal			this.$set(this.position, 0, valueObj)		}	},	created() {		if (this.swipeaction.children !== undefined) {			this.swipeaction.children.push(this)		}	},	mounted() {		this.init()	},	beforeDestroy() {		this.swipeaction.children.forEach((item, index) => {			if (item === this) {				this.swipeaction.children.splice(index, 1)			}		})	},	methods: {		init() {						setTimeout(() => {				this.getSize()				this.getButtonSize()			}, 50)		},		closeSwipe(e) {			if (!this.autoClose) return			this.swipeaction.closeOther(this)		},				change(e) {			this.$emit('change', e.open)			let valueObj = this.position[0]			if (valueObj.show !== e.open) {				valueObj.show = e.open				this.$set(this.position, 0, valueObj)			}		},		onClick(index, item) {			this.$emit('click', {				content: item,				index			})		},		appTouchStart(){},		appTouchEnd(){},		getSize() {			const views = uni.createSelectorQuery().in(this)			views				.selectAll('.selector-query-hock')				.boundingClientRect(data => {					if (this.autoClose) {						data[0].show = false					} else {						data[0].show = this.show					}					this.position = data				})				.exec()		},		getButtonSize() {			const views = uni.createSelectorQuery().in(this)			views				.selectAll('.button-hock')				.boundingClientRect(data => {					this.button = data				})				.exec()		}	}}
 |