<template> 
 | 
    <view> 
 | 
        <slot></slot> 
 | 
    </view> 
 | 
</template> 
 | 
  
 | 
<script> 
 | 
    /** 
 | 
     * SwipeAction 滑动操作 
 | 
     * @description 通过滑动触发选项的容器 
 | 
     * @tutorial https://ext.dcloud.net.cn/plugin?id=181 
 | 
     */ 
 | 
    export default { 
 | 
        name:"uniSwipeAction", 
 | 
        data() { 
 | 
            return {}; 
 | 
        }, 
 | 
        created() { 
 | 
            this.children = []; 
 | 
        }, 
 | 
        methods: { 
 | 
            // 公开给用户使用,重制组件样式 
 | 
            resize(){ 
 | 
                // wxs 会自己计算组件大小,所以无需执行下面代码 
 | 
                // #ifndef APP-VUE || H5 || MP-WEIXIN 
 | 
                this.children.forEach(vm=>{ 
 | 
                    vm.init() 
 | 
                }) 
 | 
                // #endif 
 | 
            }, 
 | 
            // 公开给用户使用,关闭全部 已经打开的组件 
 | 
            closeAll(){ 
 | 
                this.children.forEach(vm=>{ 
 | 
                    // #ifdef APP-VUE || H5 || MP-WEIXIN 
 | 
                    vm.is_show = 'none' 
 | 
                    // #endif 
 | 
  
 | 
                    // #ifndef APP-VUE || H5 || MP-WEIXIN 
 | 
                    vm.close() 
 | 
                    // #endif 
 | 
                }) 
 | 
            }, 
 | 
            closeOther(vm) { 
 | 
                if (this.openItem && this.openItem !== vm) { 
 | 
                    // #ifdef APP-VUE || H5 || MP-WEIXIN 
 | 
                    this.openItem.is_show = 'none' 
 | 
                    // #endif 
 | 
  
 | 
                    // #ifndef APP-VUE || H5 || MP-WEIXIN 
 | 
                    this.openItem.close() 
 | 
                    // #endif 
 | 
                } 
 | 
                // 记录上一个打开的 swipe-action-item ,用于 auto-close 
 | 
                this.openItem = vm 
 | 
            } 
 | 
        } 
 | 
    }; 
 | 
</script> 
 | 
  
 | 
<style></style> 
 |