《Electron实战》中文版内容节选,私聊得电子书样本。
2.4. UI实现
我们首先修改一下index.html文件,为UI添加一些必要的标签。
代码清单2.12 为应用程序UI添加标签:./app/index.html
Bookmarker
我们有一个添加新链接的section,一个用于显示所有链接的section,以及一个用于清除所有链接的按钮。应用程序的
内容已经准备好了,现在将注意力转向功能。让我们清除app/renderer.js的所有内容,重新开始。在此过程中,我们需要处理添加的标记元素,因此让我们首先通过选择器查询到这些元素,将他们缓存到变量中。将以下代码添加到app/renderer.js文件。
代码清单2.13 缓存DOM元素选择器:./app/renderer.js
const linksSection = document.querySelector('.links');const errorMessage = document.querySelector('.error-message');const newLinkForm = document.querySelector('.new-link-form');const newLinkUrl = document.querySelector('.new-link-url');const newLinkSubmit = document.querySelector('.new-link-submit');const clearStorageButton= document.querySelector('.clear-storage');
如果你回顾一下代码清单2.12,你会注意到我们将标记中的input元素的type属性设置为了“url”。如果它的内容不是有效的URL,Chromium会将该元素标记为无效。我们可以给元素添加有效和无效状态的样式,甚至可以通过JavaScript来检测它的状态。不幸的是,我们无法访问Chrome或Firefox内置的错误消息弹出窗,这些弹出窗不属于Chromium Content Module,因此也不是Electron的一部分。此时,我们在默认情况下禁用提交按钮,然后用户每次输入URL时,再检查其内容是否是有效的URL。
只有当用户输入了有效的URL,我们才启用提交按钮,允许他们提交URL。向app/renderer.js文件添加以下代码。
代码清单2.14 添加一个事件监听来启用提交按钮:./app/renderer.js
newLinkUrl.addEventListener('keyup', () => { newLinkSubmit.disabled = !newLinkUrl.validity.valid;});
趁现在还可以添加一个小辅助函数,用来清除URL输入框内容。正常情况下,只要成功存储了链接,就该调用它。
代码清单2.15 添加一个帮助函数来清理输入框:./app/renderer.js
const clearForm= () => { newLinkUrl.value = null;};
当用户提交链接时,我们希望浏览器能向该URL发送一个请求,获取响应内容后,进行解析,查找title元素并获取标题文本,然后将书签的标题和URL存储到localStorage,最后更新书签页面。
《Electron实战》中文版!
推荐阅读:鄂都财经网
-
高通晒成绩单:全球34家OEM采用骁龙X55
近日,高通公司宣布目前已有34家原始设备制造商(OEM)承诺在明年推出的商用5G宽带设备中采用其骁龙X55调制解调器。这些5G宽带设备称为5G固定无线接入阵列(...
2019-10-17 -
中俄(重庆)两江经贸合作对接会在两江新区举行
10月16日,在中俄建交70周年之际,中俄(重庆)两江经贸合作对接会在两江新区举行。此次活动得到了重庆市商务委、重庆海关的大力支持。来自俄罗斯联邦政府驻中国商务...
2019-10-17 -
智能家装市场调查:智能家居的真实状况
亿欧智库发布《2019H1中国创投数据报告》,家居行业排在了倒数第一的位置,近三个月也未曾追加哪怕一星半点。截至2019年6月30日,家居融资发生次数30起,融...
2019-10-17 -
阿里董事局主席张勇:新旅行要超越消费者期望,
【环球网科技综合报道 记者 勃潺】10月16日,在飞猪新旅行商家大会上,阿里巴巴集团董事局主席兼首席执行官张勇表示,阿里巴巴20年发展,形成了面向消费者和企业两...
2019-10-17 -
16家影视公司交上第三季度成绩单:哪吒发威,
暑期档制造爆款,也催生流量。无论是大银幕上的藕饼CP,还是小荧屏上的“现男友”,他们成为今夏影视作品热门话题担当。当秋天来临,站在这些作品背后的幕后推手,也开始...
2019-10-17 -
携高端家电亮相广交会,海尔实现出口单价业内唯
本报10月16日讯 正在举行的第126届秋季广交会上,海尔携系列高端创新产品亮相。作为今年以来出口家电单价唯一上涨的品牌,海尔不仅在此次广交会上展示了系列高端产...
2019-10-17 -
腾讯宝马加持的四维图新“熄火”?Q3净利暴跌
“风口”上的四维图新,难道只能活在梦想中?10月15日,北京四维图新科技股份有限公司(以下简称“四维图新”)发布了2019年前三季度业绩预告。预告显示,四维图新...
2019-10-17 -
财鑫闻|“春天”还是“寒冬”外资零售企业频转
大众网·海报新闻济南10月16日讯(记者 辛振东)10月11日,麦德龙宣布将其中国业务出售给物美,物美将在双方成立的合资公司中占股80%,此次交易金额估计超百亿...
2019-10-17