Chrome 78 中的新功能

Chrome 78 现已发布!

我是 Pete LePage,让我们深入了解 Chrome 78 中面向开发者的新功能!

CSS 属性和值 API

CSS 变量(在技术层面称为自定义属性)非常强大。借助它们,您可以在整个 CSS 中定义和使用自己的属性。不过,自定义属性不仅仅是简单的搜索和替换。

html {
  --my-color: green;
}
.thing {
  color: var(--my-color);
}

如果您为颜色使用了变量,但将网址作为值进行分配,系统会静默舍弃该规则。借助 CSS 属性和值 API,您可以为自定义属性定义类型和默认回退值。

html {
  --my-color: url(‘not-a-color'); // Oops, not a color!
}
.thing {
  color: var(--my-color);
}

注册属性只需调用 window.CSS.registerProperty() 并提供要定义的属性的名称,以及该属性的类型(如果应继承),以及其初始值即可。

window.CSS.registerProperty({
  name: '--my-color',
  syntax: '<color>',
  inherits: false,
  initialValue: 'black',
});

如需了解完整详情,请参阅 web.dev 上 Sam Richard 撰写的利用 Houdini 的新 API 打造更智能的自定义属性一文。

新手服务工人

现在,系统会对 importScripts() 导入的服务工作器脚本执行逐字节检查。过去,若要强制已安装的 Service Worker 获取对导入脚本所做的更改,唯一的方法是更改导入脚本的网址,通常是通过在网址中添加 semver 值或哈希来实现。

importScripts('https://example.com/v1.1.0/index.js');
importScripts('https://example.com/index.abcd1234.js');

从 Chrome 78 开始,每次对顶级服务工作器文件执行更新检查时,Chrome 还会检查所有导入的脚本的内容是否已更改。如果有,系统会触发完整的服务工作线程更新流程。这使得 Chrome 符合规范,并与 Firefox 和 Safari 的做法保持一致。

Jeff 在默认情况下,服务工作器更新更快一文中介绍了所有详细信息,包括一些关于 HTTP 缓存如何影响更新周期的重要知识。

新的来源试用

通过源代码试用,我们可以验证实验性功能和 API,您也可以就这些功能在更广泛部署中的易用性和有效性提供反馈。

实验性功能通常仅在启用标志后可用,但当我们针对某项功能提供初始试用时,您可以注册该初始试用,为您源站上的所有用户启用该功能。

通过选择参与源试用,您可以构建演示版和原型,让您的 Beta 版测试用户可以在试用期间试用,而无需在 Chrome 中切换任何特殊标志。

如需详细了解源代码试用,请参阅面向 Web 开发者的源代码试用指南。您可以在 Chrome 源代码试用页面上查看正在进行的源代码试用列表,并注册参与这些试用。


Native File System

Chrome 78 开始对原生文件系统 API 进行源试用,预计将持续到 Chrome 80。

借助 Native File System API,开发者可以构建功能强大的 Web 应用,与用户本地设备上的文件进行交互。用户向 Web 应用授予访问权限后,此 API 让 Web 应用可以直接读取用户设备上的文件和文件夹内容,或者保存对这些内容的更改。

我非常期待这将带来全新的体验,这样我便无需再“上传”或“下载”要处理的文件。请参阅我关于原生文件系统的文章,了解所有详细信息,包括代码、演示以及我们为保障用户安全而采取的措施。

短信接收器

Chrome 78 开始针对 SMS Receiver API 进行源试用,预计将持续到 Chrome 80。

SMS Receiver API 现已推出源试用版,可让您的 Web 应用接收采用特殊格式的短信,以便了解应用的来源。这样,您就可以通过编程方式从短信中获取动态密码 (OTP),并更轻松地为用户验证电话号码。

Eiji 撰写了使用短信接收器 API 在网站上验证电话号码一文,其中包含所有详细信息,以及如何注册参与源代码试用。

2019 年 Chrome 开发者峰会

别忘了在 11 月 11 日和 12 日收看 Chrome 开发者峰会,该峰会将在 Chrome 开发者 YouTube 频道上进行直播。


深入阅读

本文仅介绍了一些主要亮点。如需了解 Chrome 78 中的其他变更,请点击以下链接。

订阅

如需及时了解我们的最新视频,请订阅我们的 Chrome 开发者 YouTube 频道,这样每当我们发布新视频时,您就会收到电子邮件通知,或者您也可以将我们的 RSS Feed 添加到 Feed 阅读器中。

我是 Pete LePage,Chrome 79 发布后,我会立即为您介绍 Chrome 中的新变化!