electron-vue 窗体禁止拖拽

简介: electron-vue 窗体禁止拖拽

1. 新建文件 disDrag.js

src\renderer\utils\disDrag.js

 
// 全局监听drag和drop事件,当用户拖入一个文件但是又不是拖入可拖拽区域的时候,将其屏蔽掉
// 避免electron应用像浏览器那样,拖入pdf或图片会自动打开
// 将此js通过mixin引入APP.vue中
// import disDrag from './utils/disDrag.js'
// mixins: [disDrag],
 
export default {
    mounted () {
      this.disableDragEvent()
    },
    methods: {
      disableDragEvent () {
        window.addEventListener('dragenter', this.disableDrag, false)
        window.addEventListener('dragover', this.disableDrag)
        window.addEventListener('drop', this.disableDrag)
      },
      disableDrag (e) {
        const dropzone = document.getElementById('upload-area') // 这个是可拖拽的上传区
        if (dropzone === null || !dropzone.contains(e.target)) {
          e.preventDefault()
          e.dataTransfer.effectAllowed = 'none'
          e.dataTransfer.dropEffect = 'none'
        }
      }
    },
    beforeDestroy () {
      window.removeEventListener('dragenter', this.disableDrag, false)
      window.removeEventListener('dragover', this.disableDrag)
      window.removeEventListener('drop', this.disableDrag)
    }
  }

2. 在app.vue中,通过mixins导入

src\renderer\App.vue

<script>
// 导入disDrag
import disDrag from "./utils/disDrag.js";
 
export default {
  // 通过mixins加载
  mixins: [disDrag],
};
</script>
目录
相关文章
|
6月前
3.Electron之remote,打开新窗体
3.Electron之remote,打开新窗体
221 1
|
JavaScript 前端开发
『快速入门electron』之实现窗口拖拽
## 看完本文你可学会 - 对于进程通信有基本的一个了解 - 学会自定义的顶部栏如何实现拖拽功能
|
1月前
|
JSON JavaScript 前端开发
开发桌面程序-Electron入门
【10月更文挑战第16天】Electron 是一个使用 JavaScript、HTML 和 CSS 构建跨平台桌面应用的框架,嵌入了 Chromium 和 Node.js。本文介绍了如何搭建 Electron 开发环境,包括安装 Node.js、创建项目、配置 main.js 和打包应用。通过简单的步骤,你可以快速创建并运行一个基本的 Electron 应用程序。
开发桌面程序-Electron入门
|
4月前
|
JavaScript 开发工具
Electron 开发过程中主进程的无法看到 console.log 输出怎么办
Electron 开发过程中主进程的无法看到 console.log 输出怎么办
|
5月前
|
前端开发
PC端01,桌面端,electron的开发,electron的开发的系列课程,软件开发必备流程,electron的讲解,electron的开发,vitepress博主的gitee链接,PC端效率软件
PC端01,桌面端,electron的开发,electron的开发的系列课程,软件开发必备流程,electron的讲解,electron的开发,vitepress博主的gitee链接,PC端效率软件
PC端01,桌面端,electron的开发,electron的开发的系列课程,软件开发必备流程,electron的讲解,electron的开发,vitepress博主的gitee链接,PC端效率软件
|
7月前
|
移动开发 开发框架 JavaScript
Vue3 Vite electron 开发桌面程序
Vue3 Vite electron 开发桌面程序
345 0
|
前端开发 算法 JavaScript
从零开始开发图床工具:使用 Gitee 和 Electron 实现上传、管理和分享(下)
从零开始开发图床工具:使用 Gitee 和 Electron 实现上传、管理和分享(下)
188 0
|
存储 Web App开发 JavaScript
从零开始开发图床工具:使用 Gitee 和 Electron 实现上传、管理和分享(上)
从零开始开发图床工具:使用 Gitee 和 Electron 实现上传、管理和分享(上)
247 0
|
Web App开发 资源调度 前端开发
基于NeteaseCloudMusicApi和electron-vue开发网易云音乐--electron-vue初始化
基于NeteaseCloudMusicApi和electron-vue开发网易云音乐--electron-vue初始化
144 0
|
前端开发 JavaScript API
React使用Electron开发桌面端
React是一个流行的JavaScript库,用于构建Web应用程序。结合Electron框架,可以轻松地将React应用程序打包为桌面应用程序。以下是使用React和Electron开发桌面应用程序的步骤:
React使用Electron开发桌面端