electron踩坑之dialog中的callback解决


Posted in Javascript onOctober 06, 2020

踩坑分析

之前版本使用dialog时选择文件时,可以加入callback,来获取被选择文件的路径,而electron10更新后发生了改动,采用了Promise对象来获取结果。

electron 10之前我们获取文件路径,只需加入callback即可,也就是下述写法,且之前返回的data结果直接是文件的路径。

openDialogDom.onclick = function(){

  remote.dialog.showOpenDialog({
    properties:['openFile']

  },function(data){
    console.log(data)
  })

}

解决

electron10之后,写项目时我发现callback无效,在之前的踩坑经历来说,我觉得又是因为版本更新所带来的结果,查看官方文档,又带给了我踩坑结束的收获。

electron踩坑之dialog中的callback解决

可以看出在该方法的返回值变为了Promise对象,且在Promise对象中增加了cancele,filePaths,bookmarks属性,此时我们要想获取被选中的文件的路径,也需要与原先未更新版本前有着不一样的改变,也就是如下写法。

openDialogDom.onclick = function(){

  remote.dialog.showOpenDialog({
    properties:['openFile']

  }).then(res => {
    console.log(res.canceled)
    console.log(res.filePaths)
  })

}

electron踩坑之dialog中的callback解决

问题解决,踩坑完毕。

到此这篇关于electron踩坑之dialog中的callback解决的文章就介绍到这了,更多相关electron dialog callback内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
用客户端js实现带省略号的分页
Apr 27 Javascript
JQEasy-ui在IE9以下版本中二次加载的问题分析及处理方法
Jun 23 Javascript
iframe里面的元素触发父窗口元素事件的jquery代码
Oct 19 Javascript
JavaScript获取网页表单action属性的方法
Apr 02 Javascript
jQuery实现只允许输入数字和小数点的方法
Mar 02 Javascript
js 获取经纬度的实现方法
Jun 20 Javascript
JavaScript实现汉字转换为拼音的库文件示例
Dec 22 Javascript
div实现自适应高度的textarea实现angular双向绑定
Jan 08 Javascript
jquery 校验中国身份证号码实例详解
Apr 11 jQuery
详解webpack+gulp实现自动构建部署
Jun 29 Javascript
Vue cli构建及项目打包以及出现的问题解决
Aug 27 Javascript
微信小程序实现点击按钮后修改颜色
Dec 05 Javascript
electron踩坑之remote of undefined的解决
Oct 06 #Javascript
9个JavaScript日常开发小技巧
Oct 06 #Javascript
详解ES6中class的实现原理
Oct 03 #Javascript
在vue中使用Echarts画曲线图的示例
Oct 03 #Javascript
vue 虚拟DOM的原理
Oct 03 #Javascript
vue使用video插件vue-video-player的示例
Oct 03 #Javascript
区分vue-router的hash和history模式
Oct 03 #Javascript
You might like
分页显示Oracle数据库记录的类之二
2006/10/09 PHP
php读取3389的脚本
2014/05/06 PHP
Yii2.0 RESTful API 基础配置教程详解
2018/12/26 PHP
$.ajax json数据传递方法
2008/11/19 Javascript
JavaScript基础知识之数据类型
2012/08/06 Javascript
jQuery中fadeIn、fadeOut、fadeTo的使用方法(图片显示与隐藏)
2013/05/08 Javascript
url参数中有+、空格、=、%、&、#等特殊符号的问题解决
2013/05/15 Javascript
浏览器图片选择预览、旋转、批量上传的JS代码实现
2013/12/04 Javascript
jquery基础教程之deferred对象使用方法
2014/01/22 Javascript
JQuery插件iScroll实现下拉刷新,滚动翻页特效
2014/06/22 Javascript
js控制鼠标事件移动及移出效果显示
2014/10/19 Javascript
JavaScript动态创建link标签到head里的方法
2014/12/22 Javascript
使用pjax实现无刷新更改页面url
2015/02/05 Javascript
JS实现漂亮的淡蓝色滑动门效果代码
2015/09/23 Javascript
js提交form表单,并传递参数的实现方法
2016/05/25 Javascript
Vue2.0 组件传值通讯的示例代码
2017/08/01 Javascript
JavaScript 中 JSON.parse 函数 和 JSON.stringify 函数
2018/12/05 Javascript
JS使用cookie保存用户登录信息操作示例
2019/05/30 Javascript
scrapyd schedule.json setting 传入多个值问题
2019/08/07 Javascript
layui 实现自动选择radio单选框(checked)的方法
2019/09/03 Javascript
[51:17]Mineski vs Secret 2019国际邀请赛淘汰赛 败者组 BO3 第一场 8.22
2019/09/05 DOTA
python实现网页链接提取的方法分享
2014/02/25 Python
Python中3种内建数据结构:列表、元组和字典
2014/11/30 Python
Python+tkinter模拟“记住我”自动登录实例代码
2018/01/16 Python
python3获取两个日期之间所有日期,以及比较大小的实例
2018/04/08 Python
Pycharm 操作Django Model的简单运用方法
2018/05/23 Python
Python中的取模运算方法
2018/11/10 Python
Python3爬虫里关于Splash负载均衡配置详解
2020/07/10 Python
python Tornado框架的使用示例
2020/10/19 Python
html5自定义video标签的海报与播放按钮功能
2019/12/04 HTML / CSS
高性能钓鱼服装:Huk Gear
2019/02/20 全球购物
我未来的职业规划范文
2014/01/11 职场文书
公司接待方案
2014/03/08 职场文书
设计师求职信
2014/07/01 职场文书
学校党的群众路线教育实践活动制度建设计划
2014/11/03 职场文书
MySQL数据库完全卸载的方法
2022/03/03 MySQL