# Swipeout 滑动栏
# 介绍
可以向左滑动来展示操作按钮的组件。
# 引入
import { Swipeout } from 'mind-ui-vue';
Vue.use(Swipeout);
# 示例
可以向左滑动来展示操作按钮的组件。
<m-swipeout
  v-for="item in list"
  :key="item.id"
  auto-close
  @click="handleClick(item.id)"
  @change="handleChange"
>
  <div class="demo-content swipeout-demo-item">
    <div class="name">{{ item.name }}</div>
    <div class="content">
      <div class="title">{{ item.title }}</div>
      <div class="desc">{{ item.desc }}</div>
    </div>
    <div class="info">
      <div class="time">{{ item.time }}</div>
    </div>
  </div>
  <div class="btn-group" slot="button">
    <div class="btn up" style="width: 80px" @click="handleUp(item.id)">
      置顶
    </div>
    <div
      v-if="item.id === 2"
      class="btn delete"
      style="width: 80px"
      @click="handleDelete(item.id)"
    >
      删除
    </div>
  </div>
</m-swipeout>
export default {
  name: "swipeout",
  data() {
    return {
      list: [
        {
          id: 1,
          name: "盖",
          title: "德玛西亚之力-盖伦",
          desc: "人在塔在!",
          time: "下午5:01",
        },
        {
          id: 2,
          name: "赵",
          title: "德邦总管-赵信",
          desc: "一点寒芒先到,随后枪出如龙。",
          time: "下午5:01",
        },
        {
          id: 3,
          name: "嘉",
          title: "德玛西亚皇子-嘉文四世",
          time: "下午5:01",
        },
        {
          id: 4,
          name: "泰",
          title: "蛮族之王-泰达米尔",
          time: "昨天",
        },
        {
          id: 5,
          name: "凯",
          title: "皮城女警-凯瑟琳",
          desc: "真抱歉,少年们,我把真皮手套忘在家里了。",
          time: "星期五",
        },
      ],
      instance: null,
    };
  },
  methods: {
    handleChange(instance) {
      this.instance = instance;
    },
    handleUp(id) {
      this.$message(`tap ID: ${id}`);
    },
    handleDelete(id) {
      const toast = this.$toast({
        message: "删除中",
        type: "loading",
      });
      setTimeout(() => {
        toast.close();
        this.instance.close();
        let index = this.list.findIndex((item) => item.id === id);
        this.list.splice(index, 1);
        this.$toast("删除成功");
      }, 1200);
    },
    //
    handleClick(id) {
      this.$message(`click ID: ${id}`);
    },
  },
};
# Api
# Props
| 参数 | 说明 | 类型 | 默认值 | 
|---|---|---|---|
| async-close | 是否异步关闭 | Boolean | false | 
# Slots
| 名称 | 说明 | 
|---|---|
| — | 自定义展示内容 | 
| button | 自定义操作按钮内容 | 
# Events
| 事件名称 | 说明 | 回调参数 | 
|---|---|---|
| $close | 关闭实例 | — | 
| open | 打开时触发 | 当前组件实例 | 
| close | 关闭时触发 | 当前组件实例 | 
| change | 打开或关闭时触发 | 当前组件实例 | 
| click | 点击时触发 | — | 
