Vue3组件拖拽?

本文介绍了如何在Vue3中使用VueDraggable-plus组件实现拖拽功能,包括基本使用如开始、暂停和禁用操作,以及组件的相关属性设置和事件处理。
摘要由CSDN通过智能技术生成

网址:  Transition | vue-draggable-plusvue3拖拽排序组件icon-default.png?t=N7T8https://alfred-skyblue.github.io/vue-draggable-plus/demo/transition/

基础使用实例

<template>
    <!-- 点击按钮开始拖动 -->
    <button @click="start">start</button>
    <!-- 点击按钮暂停拖动 -->
    <button @click="pause">pause</button>
    <!-- 点击按钮禁用拖动 -->
    <button @click="disabled = true">disabled</button>
    <div class="flex">
        <!-- 使用VueDraggable组件实现拖拽功能,设置相关属性 -->
        <VueDraggable ref="VueDraggableRed" v-model="list" :disabled="disabled" :animation="150" ghostClass="ghost"
            class="flex flex-col gap-2 p-4 w-300px h-300px m-auto bg-gray-500/5 rounded" @start="onStart"
            @update="onUpdate">
            <!-- 循环渲染拖拽元素 -->
            <div v-for="item in list" :key="item.id" class="cursor-move h-30 bg-gray-500/5 rounded p-3 cursor-move">
                {{ item.name }}
            </div>
        </VueDraggable>
        <!-- 预览列表组件 -->
        <preview-list :list="list" />
    </div>
</template>

<script setup lang="ts">
import { ref } from 'vue'
import { type UseDraggableReturn, VueDraggable } from 'vue-draggable-plus'
const VueDraggableRed = ref<UseDraggableReturn>()
const disabled = ref<boolean>(false)
const list = ref([
    {
        name: 'Joao',
        id: 1
    },
    {
        name: 'Jean',
        id: 2
    },
    {
        name: 'Johanna',
        id: 3
    },
    {
        name: 'Juan',
        id: 4
    }
])

// 暂停拖动操作
const pause = () => {
    VueDraggableRed.value?.pause()
}

// 开始拖动操作
const start = () => {
    VueDraggableRed.value?.start()
}

// 拖动开始事件
const onStart = () => {
    console.log('start')
}

// 拖动更新事件
const onUpdate = () => {
    console.log('update')
}
</script>

<style scoped lang="scss">
.ghost {
    opacity: 0.5;
    background: #c8ebfb;
}
</style>

其他细节可去官网查看文档

VueDraggablePlus | 支持 Vue2 和 Vue3 的拖拽组件

  • 24
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
CAN(Controller Area Network,控制器局域网)总线协议是一种广泛应用于工业自动化、汽车电子等领域的串行通讯协议。其帧格式如下: <img src="https://img-blog.csdnimg.cn/20200925125252655.png" width="400"> CAN总线协议的帧分为标准帧和扩展帧两种,其中标准帧包含11位标识符,扩展帧包含29位标识符。在CAN总线上,所有节点都可以同时发送和接收数据,因此需要在帧中包含发送方和接收方的信息。 帧格式的具体解释如下: 1. 帧起始符(SOF):一个固定的位模式,表示帧的起始。 2. 报文控制(CTRL):包含几个控制位,如IDE、RTR等。其中IDE表示标识符的类型,0表示标准帧,1表示扩展帧;RTR表示远程请求帧,0表示数据帧,1表示远程请求帧。 3. 标识符(ID):11位或29位的标识符,用于区分不同的CAN消息。 4. 控制域(CTL):包含几个控制位,如DLC、EDL等。其中DLC表示数据长度,即数据域的字节数;EDL表示数据长度是否扩展,0表示标准数据帧,1表示扩展数据帧。 5. 数据域(DATA):0~8字节的数据。 6. CRC:用于校验数据是否正确。 7. 确认位(ACK):由接收方发送的确认信息,表示数据是否正确接收。 8. 结束符(EOF):一个固定的位模式,表示帧的结束。 以上就是CAN总线协议的帧格式。在实际应用中,节点之间通过CAN总线进行数据交换,通过解析帧中的各个字段,可以判断消息的发送方、接收方、数据内容等信息。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值