道招

electron应用更新版本后的拼写检查失效?原来一行代码就搞定

如果您发现本文排版有问题,可以先点击下面的链接切换至老版进行查看!!!

electron应用更新版本后的拼写检查失效?原来一行代码就搞定

小组的项目半个月前更新了一个小版本,然后大家纷纷问我是改了啥? 我也一脸懵逼啊,我啥以没干啊,那个小版本里面有我这边的一个紧急需求,这个“锅”我推都不好推,只能怪运气不好。

本来指望小组负责electron部分的同事来牵头解决的,虽然报障是从我复制的邮件这边开始报障的,主要是因为邮件客服比较依赖这个功能吧,功能失效了写英语也没底气了,直接报障了。 但是懂行的都知道,这个不是前端仔随便就能干预的功能,所以需要在electron层来想解决方案。

后面几天我还在码需求,改bug呢,临近发版前总算有些许闲暇,毕竟即使有无关紧要的bug也不宜再匆忙改代码了。 同事太忙也一直没时间跟进这个故障,那只能自己来了。

自己凭借个人经验开始了自己的故障定位之旅。

1、从electron官方SpellChecker模块了解到hunspell dictionary,它默认从Google CDN下载下来的。

file

猜测下载失败可能会影响拼写检查,了解相关知识点准备验证猜想

2、从项目spellcheck关键词,发现有spellcheck-dictionary相关的事件

file

尝试在项目加入监听electron抛出的spellcheck-dictionary-download-beginspellcheck-dictionary-download-successspellcheck-dictionary-download-failurespellcheck-dictionary-download-initialized等事件

发现监听到spellcheck-dictionary-download-beginspellcheck-dictionary-download-failure,无spellcheck-dictionary-download-successspellcheck-dictionary-download-initialized事件,确定spellcheck-dictionary的确下载失败

file

3、从网上搜索及electron源码了解到字典文件位于electron个人目录下的Dictionaries文件夹内,尝试在拼写检查未失效的electron应用中删除该文件,电脑提示该资源被electron应用占用,确定Dictionaries内的字典文件为electron应用使用

file

file

4、根据文档尝试setSpellCheckerDictionaryDownloadURL干预spellcheck-dictionary的下载地址,因具体待下载的语言词典文件名信息不确定,先本地用http-server启一个服务,测试setSpellCheckerDictionaryDownloadURL如何生效以及electron下载字典请求的url信息

在创建window时加入 newWindow.webContents.session.setSpellCheckerDictionaryDownloadURL('http://127.0.0.1:8080/');

file

确认本地服务器接收到electron的下载请求,并且请求url形如 http://127.0.0.1:8080//en-us-9-0.bdic

5、寻找拼写检查字典en-us-9-0.bdic文件,从其它未失效的用户电脑复制或从互联网搜索,验证字典下载能否成功

file

成功接收到spellcheck-dictionary-download-successspellcheck-dictionary-download-initialized事件,同时Dictionaries文件夹内成功下载字典文件

file

6、mcd重新打包,再次验证上述改动

setSpellCheckerDictionaryDownloadURL设置为能成功下载字典文件的外网url服务地址

newWindow.webContents.session.setSpellCheckerDictionaryDownloadURL('https://wp-img.daozhao.com/im_dict/');

改动后的新版安装包拼写检查功能正常

7、获取拼写检查其它语言对应的字典文件名信息

file

8、优化代码,正式修复

总结

大胆假设,小心求证

更新时间:
上一篇:根据小米运动导出记录整理成tcx文件可以导入给高驰、佳明等平台啦下一篇:electron应用的拼写检查终于在给chromium提了issue之后,新的修复方案更好

相关文章

electron应用的拼写检查终于在给chromium提了issue之后,新的修复方案更好

之前提到过《 electron应用更新版本后的拼写检查失效?原来一行代码就搞定 》,问题的原因是因为官方部分语种的下载地址重定向后的cdn地址不可访问,导致国内无法下载到字典文件,并且我提议直接将 阅读更多…

记录CKEditor4删除文本引起文本分割而升级版本的经历

背景 前段时间对接了一个electron壳提供功能————拼写检查,也就是在输入的英文有问题的时候,给予红色波浪线提示,邮件的时候能出现候选词,选择候选词后进行替换。 在功能上线当天上午产品 阅读更多…

目前市面上的拼写检查工具哪家强?没有调研就没有发言权

目前市面上的含拼写检查功能产品主要分两种, 拼写检查类 和 写作助手 (支持拼写检查、语法检查、书写润色等)类。 下面分别以这两类的典型产品举例。 拼写检查类产品 一、chrome类拼写 阅读更多…

关注道招网公众帐号
友情链接
消息推送
道招网关注互联网,分享IT资讯,前沿科技、编程技术,是否允许文章更新后推送通知消息。
允许
不用了