Vue 实现自定义拖拽上传

这段代码用于监听元素的拖放事件。当有文件拖过时,它会阻止默认操作并添加一个CSS类。在拖动离开或文件释放时,该类会被移除。如果dropped文件不是Excel格式,函数会显示错误消息;否则,它调用onFile函数处理文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

        this.$el.addEventListener('dragover', (event) => {
            event.preventDefault();
            this.$el.classList.add('drag-over');
        });

        this.$el.addEventListener('dragleave', () => {
            this.$el.classList.remove('drag-over');
        });

        this.$el.addEventListener('drop', (event) => {
            event.preventDefault();
            this.$el.classList.remove('drag-over');

            const files = event.dataTransfer.files;
            let file = files[0]
            if (file.type !== 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet') {
                return this.$message.error('请选择正确文件类型')
            } else {
                this.onFile(files[0])
            }
        });

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值