zhangzengfei
2021-09-16 38430ddb8612fce15a2f1c940f9bd57d4da3e70b
components/uni-swipe-action-item/mpwxs.js
@@ -1,97 +1,97 @@
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
         })
export default {
   data() {
      return {
         position: [],
         button: []
      }
   },
   computed: {
      pos() {
         return JSON.stringify(this.position)
      },
      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()
      }
   }
      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()
      }
   }
}