更新记录

1.0.0(2025-04-05) 下载此版本

初始化版本


平台兼容性

HbuilderX/cli最低兼容版本
4.61

uni-app

app-vue app-nvue app-android app-ios app-harmony
? ? ? ? ?
H5-Safari Android Browser 微信浏览器(Android) QQ浏览器(Android) Chrome IE Edge Firefox PC-Safari
? ? ? ? ? ? ? ? ?
微信小程序 支付宝小程序 百度小程序 字节小程序 QQ小程序 钉钉小程序 快手小程序 飞书小程序 京东小程序
? ? ? ? ? ? ? ? ?
快应用-华为 快应用-联盟
? ?

uni-app x

app-android app-ios
? ?
H5-Safari Android Browser 微信浏览器(Android) QQ浏览器(Android) Chrome IE Edge Firefox PC-Safari
? ? ? ? ? ? ? ? ?

r-drag


<template>
  <div>
    <h1>列表组件示例</h1>
    <r-drag></r-drag> :list="list" :onDelete="handleDelete" @end="end">
      <!-- 遍历列表,渲染每个列表项 -->
      <template #default="{ dragInfo, start, finish, deleteItem,  }">
        <view
          v-for="(item, index) in list"
          :key="index"
          :data-index="index"
          @touchstart="start(index, $event)"
          @touchmove=""
          @touchend="finish"
          class="list-item"
          :class="{ 'active': dragInfo.dragIndex === index }"            
          :style="{ transform: dragInfo.dragIndex === index? `translateY(${dragInfo.dragOffsetY}px)` : '' }"
        >
          <!-- 显示列表项的图片 -->
          <img :src="item.image" alt="item" style="width: 50px; height: 50px; margin-right: 10px;">
          <!-- 显示列表项的名称 -->
          <span>{{ item.name }}</span>
          <!-- 显示列表项的价格 -->
          <span>{{ item.price }}</span>
          <!-- 删除按钮 -->
          <button @click="deleteItem(index)">删除</button>
        </view>
      </template>
    </ruge-drag>
  </div>
</template>

<script>
export default {
  data() {
    return {
      list: [
        { image: 'https://picsum.photos/50/50', name: 'Item 1', price: '$10' },
        { image: 'https://picsum.photos/50/50', name: 'Item 2', price: '$20' },
        { image: 'https://picsum.photos/50/50', name: 'Item 3', price: '$30' },
        { image: 'https://picsum.photos/50/50', name: 'Item 4', price: '$40' },
        { image: 'https://picsum.photos/50/50', name: 'Item 5', price: '$50' }
      ]
    };
  },
  methods: {
    handleDelete(index) {
      // 重写删除事件逻辑
      this.list.splice(index, 1);
      console.log(`删除了索引为 ${index} 的项`);
    },
    end(data, oldIndex, newIndex) {
      // 输出拖拽的数据、旧索引和新索引
      console.log('拖拽的数据:{},旧的索引:{},新的索引:{}', data, oldIndex, newIndex);
    }
  }
};
</script>

<style scoped>
h1 {
  text-align: center;
}
</style>

隐私、权限声明

1. 本插件需要申请的系统权限列表:

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

插件不采集任何数据

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

许可协议

MIT协议

暂无用户评论。

使用中有什么不明白的地方,就向插件作者提问吧~ 我要提问