最小通用 Web 平台 API
标准化的 Web 平台 API 的子集,可以选择使用 Turbo Modules 添加其他 API。
概述
最小通用 Web 平台 API 是标准化的 Web 平台 API 的精选子集,旨在定义浏览器和非浏览器基于 JavaScript 的运行时环境共有的最小功能集。 目标是在 React Native 和 Hermes 中支持这些 API。
globalThis
API 被认为是独立于用户界面的多窗口问题的。 有关更多信息,请参见window
。
使用 Turbo Modules 添加 API
Web API 也可以通过 Turbo Modules 在原生平台上实现,而无需与 React Strict DOM 进行专门集成。 例如,请参见此localStorage
实现。
兼容性
Web API | Android | iOS | 问题 # |
---|---|---|---|
AbortController | ❌ | ❌ | |
AbortSignal | ❌ | ❌ | |
Blob | ✅ | ✅ | |
Crypto | ❌ | ❌ | |
CustomEvent() 构造函数 | ❌ | ❌ | |
Event() 构造函数 | ❌ | ❌ | |
EventTarget.addEventListener() | ❌ | ❌ | #37 |
EventTarget.dispatchEvent() | ❌ | ❌ | #37 |
EventTarget.removeEventListener() | ❌ | ❌ | #37 |
fetch | ✅ 部分 | ✅ 部分 | |
FileReader | ✅ | ✅ | |
URL | ❌ | ❌ |
globalThis | Android | iOS | 问题 # |
---|---|---|---|
globalThis.atob() | ✅ | ✅ | |
globalThis.btoa() | ✅ | ✅ | |
globalThis.clearInterval() | ✅ | ✅ | |
globalThis.clearTimeout() | ✅ | ✅ | |
globalThis.console | ✅ | ✅ | |
globalThis.crypto | ❌ | ❌ | |
globalThis.fetch() | ✅ | ✅ | |
globalThis.performance.clearMarks() | ✅ | ✅ | |
globalThis.performance.clearMeasures() | ✅ | ✅ | |
globalThis.performance.getEntries() | ✅ | ✅ | |
globalThis.performance.getEntriesByName() | ✅ | ✅ | |
globalThis.performance.getEntriesByType() | ✅ | ✅ | |
globalThis.performance.mark | ✅ | ✅ | |
globalThis.performance.measure() | ✅ | ✅ | |
globalThis.performance.now() | ✅ | ✅ | |
globalThis.performance.timeOrigin | ❌ | ❌ | |
globalThis.queueMicrotask() | ✅ | ✅ | |
globalThis.setInterval() | ✅ | ✅ | |
globalThis.setTimeout() | ✅ | ✅ |