wlyyui 文档 wlyyui 文档
首页
  • 介绍
  • 快速上手
  • 自定义主题
  • 基础组件

    • Color 色彩
    • Text 文本
    • Icon 图标
    • Button 按钮
    • Animation 动画
  • 布局组件

    • GridLayout 栅格布局
    • Grid 宫格
    • Panel 面板
    • Preview 表单预览
    • List 列表
    • Card 卡片
  • 表单组件

    • Calendar 日历
    • Cascader 级联选择器
    • Picker 选择器
    • DatePicker 日期时间选择器
    • Slider 滑块选择器
    • Form 表单校验
    • FormItem 表单项
    • Select 选择器
    • Input 输入框
    • InputNumber 数字输入框
    • Label 标签
    • Radio 单选框
    • Checkbox 复选框
    • Switch 开关
    • Textarea 多行输入框
    • Rate 评分
    • Upload 图片上传
    • UploadVideo 视频上传
    • SearchBar 搜索栏
  • 反馈类型组件

    • ActionSheet 上拉菜单
    • Toast 轻提示
    • Backdrop 遮罩层
    • Dialog 对话框
    • DropdownMenu 下拉菜单
    • Modal 模态框
    • Gallery 画廊
    • Landscape 压屏窗
    • LoadAni 加载动画
    • Spin 旋转动画
    • Message 消息提示
  • 导航类型组件

    • NavBar 导航栏
    • BubbleBox 气泡框
    • Seg_tab 分段器
    • Tabbar 标签栏
    • BottomNavbar 底部导航栏
    • Tabs 标签页
    • IndexList 索引列表
    • NoticeBar 通告栏
    • Sticky 吸顶容器
    • Steps 步骤条
    • Fab 浮动按钮
    • Drawer 抽屉
    • BottomPopup 底部弹出层
    • TopPopup 顶部弹出层
    • TimeAxis 时间轴
    • SideMenu 纵向选项卡
  • 展示组件

    • Badge 徽章
    • Alert 警告框
    • Avatar 头像
    • Tag 标签
    • Tag 标签
    • Progress 进度条
    • Circle 圆形进度条
    • CountDown 倒计时
    • Divider 分割线
    • LoadMore 加载更多
    • Empty 缺省页
    • Skeleton 骨架屏
    • Parse 富文本
  • 拓展组件

    • ShareSheet 分享面板
    • Result 结果页
    • FilterBar 筛选栏
    • SingleInput 单输入框
    • DigitalRoller 数字滚轮
    • DigitalKeyboard 数字键盘
    • LicensePlate 车牌号键盘
    • SwiperDot 轮播图指示点
    • CopyText 长按复制
    • CubicBezier 贝塞尔曲线
    • ImageCropper 图片裁剪
    • Drag 拖拽排序
    • RotateVerify 旋转验证码
    • SliderCaptcha 滑块拼图验证
资源
案例
GitHub (opens new window)
首页
  • 介绍
  • 快速上手
  • 自定义主题
  • 基础组件

    • Color 色彩
    • Text 文本
    • Icon 图标
    • Button 按钮
    • Animation 动画
  • 布局组件

    • GridLayout 栅格布局
    • Grid 宫格
    • Panel 面板
    • Preview 表单预览
    • List 列表
    • Card 卡片
  • 表单组件

    • Calendar 日历
    • Cascader 级联选择器
    • Picker 选择器
    • DatePicker 日期时间选择器
    • Slider 滑块选择器
    • Form 表单校验
    • FormItem 表单项
    • Select 选择器
    • Input 输入框
    • InputNumber 数字输入框
    • Label 标签
    • Radio 单选框
    • Checkbox 复选框
    • Switch 开关
    • Textarea 多行输入框
    • Rate 评分
    • Upload 图片上传
    • UploadVideo 视频上传
    • SearchBar 搜索栏
  • 反馈类型组件

    • ActionSheet 上拉菜单
    • Toast 轻提示
    • Backdrop 遮罩层
    • Dialog 对话框
    • DropdownMenu 下拉菜单
    • Modal 模态框
    • Gallery 画廊
    • Landscape 压屏窗
    • LoadAni 加载动画
    • Spin 旋转动画
    • Message 消息提示
  • 导航类型组件

    • NavBar 导航栏
    • BubbleBox 气泡框
    • Seg_tab 分段器
    • Tabbar 标签栏
    • BottomNavbar 底部导航栏
    • Tabs 标签页
    • IndexList 索引列表
    • NoticeBar 通告栏
    • Sticky 吸顶容器
    • Steps 步骤条
    • Fab 浮动按钮
    • Drawer 抽屉
    • BottomPopup 底部弹出层
    • TopPopup 顶部弹出层
    • TimeAxis 时间轴
    • SideMenu 纵向选项卡
  • 展示组件

    • Badge 徽章
    • Alert 警告框
    • Avatar 头像
    • Tag 标签
    • Tag 标签
    • Progress 进度条
    • Circle 圆形进度条
    • CountDown 倒计时
    • Divider 分割线
    • LoadMore 加载更多
    • Empty 缺省页
    • Skeleton 骨架屏
    • Parse 富文本
  • 拓展组件

    • ShareSheet 分享面板
    • Result 结果页
    • FilterBar 筛选栏
    • SingleInput 单输入框
    • DigitalRoller 数字滚轮
    • DigitalKeyboard 数字键盘
    • LicensePlate 车牌号键盘
    • SwiperDot 轮播图指示点
    • CopyText 长按复制
    • CubicBezier 贝塞尔曲线
    • ImageCropper 图片裁剪
    • Drag 拖拽排序
    • RotateVerify 旋转验证码
    • SliderCaptcha 滑块拼图验证
资源
案例
GitHub (opens new window)
  • 基础组件

    • Color 色彩
    • Text 文本
    • Icon 图标
    • Button 按钮
    • Animation 动画
  • 布局组件

    • GridLayout 栅格布局
    • Grid 宫格
    • Panel 面板
    • Preview 表单预览
    • List 列表
    • Card 卡片
  • 表单组件

    • Calendar 日历
    • Cascader 级联选择器
    • Picker 选择器
    • DatePicker 日期时间选择器
    • Slider 滑块选择器
    • Form 表单校验
    • FormItem 表单项
    • Select 选择器
    • Input 输入框
    • InputNumber 数字输入框
    • Label 标签
    • Radio 单选框
    • Checkbox 复选框
    • Switch 开关
    • Textarea 多行输入框
    • Rate 评分
    • Upload 图片上传
    • UploadVideo 视频上传
    • SearchBar 搜索栏
  • 反馈类型组件

    • ActionSheet 上拉菜单
    • Toast 轻提示
    • Backdrop 遮罩层
    • Dialog 对话框
    • DropdownMenu 下拉菜单
    • Modal 模态框
    • Gallery 画廊
    • Landscape 压屏窗
    • Loading 加载
    • LoadAni 加载动画
    • Spin 旋转动画
    • Message 消息提示
    • SwipeAction 滑动菜单
  • 导航类型组件

    • NavBar 导航栏
    • BubbleBox 气泡框
    • Seg_tab 分段器
    • Tabbar 标签栏
    • BottomNavbar 底部导航栏
    • Tabs 标签页
    • IndexList 索引列表
    • NoticeBar 通告栏
    • Sticky 吸顶容器
    • Steps 步骤条
    • Fab 浮动按钮
    • Drawer 抽屉
    • BottomPopup 底部弹出层
    • TopPopup 顶部弹出层
    • TimeAxis 时间轴
    • SideMenu 纵向选项卡
  • 展示组件

    • Badge 徽章
    • Alert 警告框
    • Avatar 头像
    • Tag 标签
    • DataTag 标签选择
    • Progress 进度条
    • Collapse 折叠面板
    • Circle 圆形进度条
    • CountDown 倒计时
    • Divider 分割线
    • LoadMore 加载更多
    • Empty 缺省页
    • Skeleton 骨架屏
    • Parse 富文本
  • 拓展组件

    • ShareSheet 分享面板
    • Result 结果页
    • FilterBar 筛选栏
    • SingleInput 单输入框
    • DigitalRoller 数字滚轮
    • DigitalKeyboard 数字键盘
    • LicensePlate 车牌号键盘
    • SwiperDot 轮播图指示点
    • CopyText 长按复制
    • CubicBezier 贝塞尔曲线
    • ImageCropper 图片裁剪
    • Drag 拖拽排序
      • SlideVerify 滑动验证码
      • RotateVerify 旋转验证码
      • SliderCaptcha 滑块拼图验证
    • 组件
    • 拓展组件
    Mr zhang
    2023-08-15
    目录

    Drag 拖拽排序

    Drag 拖拽排序,通过拖动列表元素以此来达到对数据的重新排列。

    # 支持平台

    App(vue) App(nvue) H5 小程序
    ✓ ✓ ✓ ✓

    # 图片元素

    通过 width 属性设置总宽度,itemList 属性设置拖拽数据, columns 属性设置每行显示列数,square 属性设置item项是否显示为正方形,即高度与宽度相等,styles 属性设置内容样式 。

    <view class="wui-page__bd rounded-20rpx overflow-hidden">
        <!-- #ifndef MP-TOUTIAO -->
        <wui-drag
                :width="680"
                custom
                :itemList="itemList"
                :columns="3"
                :itemHeight="200"
                @end="end"
        >
            <template v-slot="{ model, width, height }">
                <view
                        class="wui-item"
                        :style="{ width: width + 'px', height: height + 'px' }"
                >
                    <text class="wui-text">{{ model.text }}</text>
                </view>
            </template>
        </wui-drag>
        <!-- #endif -->
    </view>
    
      const itemList = ref<any>([
        {
          id: 1,
          text: '1',
        },
        {
          id: 2,
          text: '2',
        },
        {
          id: 3,
          text: '3',
        },
        {
          id: 4,
          text: '4',
        },
        {
          id: 5,
          text: '5',
        },
        {
          id: 6,
          text: '6',
        },
        {
          id: 7,
          text: '7',
        },
        {
          id: 8,
          text: '8',
        },
        {
          id: 9,
          text: '9',
        },
      ]);
    
      const end = e => {
        //排序后列表
        console.log(e.itemList);
      };
    

    # Slots

    插槽名称 说明
    default 自定义item项内容,需要将custom属性设为true,字节小程序不支持

    # Props

    属性名 类型 说明 默认值 平台差异说明
    itemList Array 拖拽列表数据 [ ] -
    width Number, String 拖拽列表宽度,为0时使用屏幕宽度,单位rpx 0 -
    columns Number, String 每行显示个数(列数) 1 -
    itemHeight Number, String item项高度,square为false时必传(square为true时失效),单位rpx 0 -
    square Boolean item项是否以正方形显示,为true时itemHeight失效 false -
    styles Object item项内容样式,custom为false时有效,具体属性内容见下方说明 { } -
    scrollTop Number 初始化时,页面滚动高度,单位px 0 -
    isDrag Boolean 是否可拖拽 true -
    custom Boolean 是否自定义item项内容 false -

    # Events

    事件名 说明 回调参数
    @change 拖动变化时触发 {
    itemList:改变后的list列表
    }
    @end 拖动结束时触发 {
    itemList:改变后的list列表
    }
    @click item项点击时触发 {
    index:点击项索引值,
    item:索引对应item项数据
    }
    @delete 点击item项删除图标时触发 {
    index:点击项索引值
    }
    ImageCropper 图片裁剪
    SlideVerify 滑动验证码

    ← ImageCropper 图片裁剪 SlideVerify 滑动验证码→

    Theme by Vdoing | Copyright © 2023-2023 Mr zhang | MIT License
    • 跟随系统
    • 浅色模式
    • 深色模式
    • 阅读模式