场景

用HTML和CSS和JS构建跨平台桌面应用程序的开源库Electron的介绍以及搭建HelloWorld:

https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/106413828

Electron怎样进行渲染进程调试和使用浏览器和VSCode进行调试:

https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/106414541

在上面搭建好项目以及知道怎样进行调试后,需要实现将文件拖拽进div后获取文件的路径和内容。

注:

博客:
https://blog.csdn.net/badao_liumang_qizhi
关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。

实现

首先打开index.html,添加一个div

<div class="for_file_drag" id="drag_test"><h2>File对象</h2><span>往这里拖文件</span>
</div>

并给这个div添加一个id和样式,新建css文件夹 并在文件夹下新建style.css

.for_file_drag {width: 100%;height: 400px;background: pink;
}

给div添加一个宽度高度和背景色

然后在index.html中引用的js中

// File对象 实例
const fs = require('fs');
//获取div对象
const dragWrapper = document.getElementById("drag_test");
//添加拖拽事件监听器
dragWrapper.addEventListener("drop", (e) => {//阻止默认行为e.preventDefault();//获取文件列表const files = e.dataTransfer.files;if(files && files.length > 0) {//获取文件路径const path = files[0].path;console.log('path:', path);//读取文件内容const content = fs.readFileSync(path);console.log(content.toString());}
})//阻止拖拽结束事件默认行为
dragWrapper.addEventListener("dragover", (e) => {e.preventDefault();
})

然后调试运行项目,然后往div中拖拽一个文件,然后打开控制台

Electron中实现拖拽文件进div中通过File对象获取文件的路径和内容相关推荐

  1. java注解接收上传文件,前台:Input type=file 后台获取文件内容用的是spring注解,当地环境上传图片是好的,发布到服务器上图片读取不到,求大神指点...

    当前位置:我的异常网» Java Web开发 » 前台:Input type="file" 后台获取文件内 前台:Input type="file" 后台获取文 ...

  2. css鼠标拖拉卡顿_vue中解决拖拽改变存在iframe的div大小时卡顿问题

    写在最前 针对于在vue中实现拖拽改变两左右个div大小的方式,请查看上一篇文章<vue中实现拖动调整左右两侧div的宽度>.此文章主要针对于实际应用中需要拖拽改变大小的组件中使用ifra ...

  3. 中如何使用echart_jQueryEasyUI中的拖拽事件如何使用

    jQueryEasyUI中的拖拽事件通过给它设置代理元素使其拖拽.可设置拖动元素相对于x.y轴拖动,可设置拖拽何时停止等效果 jQuery中的easyui是一个非常好用的插件,它虽然使用简单方便,但是 ...

  4. java swing 控件拖动_java swing中实现拖拽功能示例

    java实现拖拽示例 Swing中实现拖拽功能,代码很简单,都有注释,自己看,运行效果如下图: package com; import java.awt.*;import java.awt.datat ...

  5. eclipse插件开发:自定义导航器中的拖拽定义

    有时候需要对导航器中的拖拽对象进行赋值,使用的场景是,拖拽导航器中的某个文件或者类或方法等,到某个编辑器中,, 因为默认的导航器所配备的拖拽动作,或则不能满足我们的需要,所有,有必要自定义,,拖拽器, ...

  6. selenium中录制拖拽动作

    今天工作中遇到了selenium中录制拖拽动作需求:在同一个页面上,将一个table中的元素拖拽到另外一个table中. 通过查看帮助文档是使用dragAndDrop或类似的命令.根据使用方法drag ...

  7. vue中实现拖拽排序

    原生拖拽 API 实现拖拽 设置元素 dragable 将元素的 dragable 属性设置 为 true (文本 图片 链接 的draggable 属性默认为 true)则元素可拖放 <div ...

  8. xd怎么做页面滑动_XD教程 | 如何在XD中制作拖拽手势”

    原标题:XD教程 | 如何在XD中制作"拖拽手势" 今日主题:设计一个滑动交互 使用工具:Adobe XD 预计时长:1-2分钟 实用指数:★★★★★ 难度系数:★ 本期教程,我们 ...

  9. FullCalendar拖拽日历在vue中单个页面的使用方法

    FullCalendar拖拽日历在vue中单个页面的使用方法 1.首先通过npm下载插 npm install --save @fullcalendar/vue @fullcalendar/daygr ...

最新文章

  1. Java多线程并发技术
  2. (六)观察者模式详解(包含观察者模式JDK的漏洞以及事件驱动模型)决了当时的问题,那时LZ接触JAVA刚几个月,比葫芦画瓢的用了观察者模式。...
  3. Python变量本质
  4. Pycharm如何在控制台输出窗口中使用Python解释器
  5. 优化 .net core 应用的 dockerfile
  6. 在mysql怎样查询地址和电话_Mysql数据查询
  7. 深度学习(六十)网络压缩简单总结
  8. 使用python通过odbc处理*.dbf数据表
  9. linux远程访问服务器
  10. 资源—稀疏编码(sparse coding)
  11. Git:checkout命令无法切换回master
  12. 【算法总结】数学问题-高精度整数
  13. 软件设计学习笔记2_体系研究与DoD体系架构框架(DoDAF)简介
  14. 致远oa系统报价_用友致远OA 系统 一般价钱?(公司60-70台左右的电脑)
  15. 鸿蒙系统只能从商城安装软件,鸿蒙系统安装不了第三方软件是为什么?鸿蒙系统怎么安装第三方app...
  16. html放大镜原理,js放大镜效果原理
  17. 4、day04利用XInput,在C/C++创建的窗口中读取键盘输入
  18. 形容词,名词记忆(五):ing ,ed 后缀常用词
  19. android APP UI设计图标注、换算
  20. 基于MATLAB的波束成型仿真

热门文章

  1. 博本 微型 电脑 linux,博本电脑下载与安装Windows7iso镜像系统教程
  2. Elasticsearch Suggester搜索建议详解
  3. Kafka学习:CentOS7下Kafka集群搭建
  4. 每天学一点儿shell:Linux中crontab的用法
  5. python 拓扑排序_拓扑排序(topsort)算法详解
  6. linux centos git 自动更新,centos 升级git到高级版本
  7. LVGL-v8.1 demo win32 VS2017工程
  8. react 合并数组_React快速上手
  9. lbp特征提取算法 知乎_计算机视觉基础-图像处理: LBP特征描述算子
  10. flutter text 左对齐_flutter输入框TextField中文本textAlign对齐分析篇