每月 Web 开发更新 1⁄2019:重新思考习惯并寻找定制解决方案

已发表: 2022-03-10
快速总结 ↬ Anselm 带着他的每月 Web 开发更新的新版本回来了。 一份阅读清单,可帮助您重新思考现有系统和习惯,并找到真正适合您产品的解决方案。

有什么比通过一些新的实验开始新的一年更好的呢? 今天我认为是时候在我的一个项目中重新考虑 JavaScript 工具了。 而且由于我们已经在纯 ECMAScript 模块中编写了所有内容,我认为现在可以很容易地在本地提供它们并删除所有构建和转译步骤。 直到我意识到——尽管我们自己编写了大部分代码——但我们有几个第三方依赖项,当然,并不是所有的都是 ECMAScript 模块。 所以现在,我不得不放弃删除所有构建步骤并继续捆绑和转换东西的计划,但我会尝试找出更好的解决方案来现代化和简化我们的工具设置,同时为我们的工具包提供更小的捆绑包用户。

另一个实验:就在几周前,我不得不为一个网站构建一个简单的“转到页面顶部”按钮。 我使用requestAnimationFrame和类似的东西来优化事件处理,但今天我发现了一种更好、更有效的解决方案,它使用IntersectionObserver来切换视口上的按钮。 您将在下面的 JavaScript 部分中找到该文章。 我想分享这些小故事的原因是因为我相信最重要的是我们回顾我们的习惯和当前的解决方案,看看是否有更好、更新、更简单的想法可以改进产品。 继续玩,继续研究,并确保不时重新考虑现有系统。

消息

  • Joseph Medley 向我们展示了 Chrome 72 中的弃用和删除,其中包括通过window.open在页面卸载期间阻止弹出窗口、基于 HTTP 的公钥固定以及 TLS 1.0 和 TLS 1.1 的弃用。

用户界面/用户体验

  • Jesse Weaver 在这里所写的内容听起来不像是什么大新闻,但他展示了我们多么容易采用一种适用于他人的产品策略来开发我们自己的产品。 Jesse 分享了为什么这不是一个好主意,以及为什么您应该始终尝试找到自己的定制解决方案。

网络性能

  • Jack Lenox 探讨了网站性能对地球气候的影响程度以及性能对访问者的影响——超越了更好的加载时间。
  • Tim Kadlec 解释了为什么绩效是一个道德点,因为它可以包括或排除人员,增加或减少能源、网络流量和时间的浪费。

JavaScript

  • 我们如何提供“返回顶部”按钮? 嗯,这是一种非常面向性能、高效的方法,它使用 Intersection Observer 来显示和隐藏按钮。
  • Ackermann Yuriy 描述了我们如何使用 FIDO2 和 Web Authentication API 无需密码即可登录用户。
  • Chrome 目前正在开发一个名为getInstalledRelatedApps的 API,可让您检测用户是否安装了您的本机应用程序。 这对于不再默认向他们显示应用横幅或让他们直接从您的网站打开应用中的特定产品功能可能很有用。
  • Harry Wolff 展示了我们如何使用React.lazy和 suspense 来拆分 JavaScript 应用程序中的代码。 这对于减少应用程序包的原始负载大小很重要,并且可以对网站的性能和用户体验产生巨大影响。
显示身份验证和验证如何在没有密码的情况下工作的信息图
无密码认证? WebAuthn API 使之成为可能。 (图片来源)

CSS

  • Una Kravets 写了一篇关于使用 Houdini 和 Paint API for CSS 的精彩文章。 她在标准 CSS 中不可用的自定义文本装饰下划线样式的示例中演示了这一点。
  • Eric Portis 解释了intrinsicsize HTML 属性的概念——希望很快——通过在浏览器解析图像之前向浏览器提示图像的预期尺寸,帮助我们在浏览器中提供无卡顿的图像加载。
  • Scott Jehl 更新了开源自定义外观select模块,在这篇博文中,他描述了我们今天如何进行样式select
  • Chris Coyier 总结了如何设置 Web 组件的样式并决定我们是希望它继承全局样式还是从头开始。
带有随机生成下划线的示例文本。
Una Kravet 的“超级下划线”示例为每个元素使用随机生成的下划线。 使用 Houdini 和 Paint API 成为可能。 (图片来源)

工作生活

  • “成就感是我们自我价值感的重要组成部分。 因为你认为自己本可以取得更多成就而自责会削弱你的信心和自尊心,让你在一天结束时感到精疲力竭。” Lisa Evans 分享了我们可以做些什么来避免陷入这个陷阱。
  • Itamar Turner-Trauring 分享了他关于如何在与愿意长时间工作的人竞争时获得工作与生活平衡的工作的想法。
  • 基于应用程序等数字产品提供医疗保健和治疗是否是个好主意? 如果是这样,这方面的要求和标准是什么? 我们如何确保这样做在道德上是正确的? 我们如何设置限制、隐私界限,我们允许公司在多大程度上进行实验? 个性化内容会好吗? 是否可以与医疗保健提供者或保险公司共享从我们的设备收集的数据? 这些是我们必须问自己并找到个人答案的问题。
  • 这篇关于千禧一代如何成为倦怠一代的文章本周给我带来了沉重的打击。 我在这群被描述为“千禧一代”的人中看到自己(我确实认为它影响的人不仅仅是 20 岁的人)而且我可以与其中提到的许多斗争联系起来,我现在认为这些问题比我想象的要大。 它们将影响社会、政治和地球上的每一个人。 鉴于这一事实,听到今天大多数人会回答说他们没有朋友可以谈论他们的恐惧和其他任何困扰他们的事情,这真是太疯狂了,而二十年前,平均答案仍然是 5 个左右。 让我们向我们的朋友保证,我们会为他们而存在,他们可以与我们谈论艰难的事情。 2019 年应该是我们——在我们的影响范围内——让生活在一个人类社区中变得美好的一年,在那里我们可以兴奋和幸福地思考我们的朋友、邻居以及在互联网上与我们一起工作或交谈的人。
  • 我们都试图同时适应很多事情:在工作、家庭、与孩子、在我们的人际关系、运动、掌握我们的财务和一些爱好方面取得成功和富有成效。 但是我们盲目地忽略了不可能同时在同一级别上管理所有这些。 当我们没有在特定的时间范围内完成所有事情时,例如在日历年结束时,我们会感到遗憾。 肖恩·布兰克认为我们应该庆祝我们所做的事情,而不是为我们没有做的事情感到内疚。

超越……

  • 有词,然后有词。 我们中的许多人都知道“公正”这个词有多么有害,它是多么具有规范性,它是多么被动地攻击性。 Tobias Tom 通过检查我们日常语言中使用它的隐含含义和结果来挑战“应该”是否是一个有用的词。 为什么“应该”可能对您和您想要实现的目标有害。
  • “我们都知道我们代表什么。 诀窍是清楚地陈述我们的价值观——并支持它们,”Ben Werdmuller 说,并指出考虑自己不想跨越的红线是多么重要,无论你可能面临或面临的外部压力如何你可能会得到的钱。
  • 本周气候改善的令人振奋的消息:一个树艺师团队成功地从世界上最古老和最大的海岸红杉的树桩中克隆和种植了树苗,其中一些树龄为 3000 年,被砍伐时直径为 35 英尺在 19 世纪和 20 世纪。 本月早些时候,在旧金山的普雷西迪奥国家公园种植了 75 棵克隆树苗。 之所以如此特别,是因为这些古老的树木在其一生中可以从大气中吸收 250 吨二氧化碳,而普通树木只能吸收 1 吨。
  • 持续的技术发展和努力构建使越来越多的事情自动化的新服务使得强调人与人之间的联系变得更加重要。 Ryan Paugh 说,那些不努力为客户、员工或环境改善的公司很快就会开始陷入困境。
  • 对于汽车行业的技术发明以及他们与他人分享的意愿,我们通常不会期待太多好消息。 但丰田现在决定与竞争对手分享他们的自动安全系统“Guardian”。 它使用自动驾驶技术来防止汽车撞车。 “我们不会只将其专有给我们自己。 但我们会以某种方式将其提供给其他人,无论是通过许可还是实际的整个系统,”该公司的 Gill Pratt 说。

感谢您的阅读! 我很高兴能在 2019 年带着我的新版 Web 开发更新回来,并感谢您一直以来的支持。 听到这么多人觉得这个资源很有帮助,我很高兴。 因此,如果您喜欢它,请随时与您认识的人分享,给我反馈,或用少量资金支持它。 ——安塞尔姆