gpt4 book ai didi

javascript - Chrome 版本。 58 "TypeError: navigator.storage.estimate is not a function"

转载 作者:行者123 更新时间:2023-12-02 21:03:48 27 4
gpt4 key购买 nike

当网络应用程序在应该运行 Android 7.1.1 的 Android 平板电脑上启动时,我有一段代码为我的 indexedDB 运行 navigator.storage.estimate()

我在使用 Chrome 浏览器版本的 Android 上遇到问题。 58 这发生了:

类型错误:navigator.storage.estimate不是一个函数

从 MDN 文档来看,似乎从版本 52 开始就应该支持 .estimate()https://developer.mozilla.org/en-US/docs/Web/API/StorageManager/estimate

58 以上的浏览器版本似乎也没有遇到同样的问题。

这是运行该函数的代码:

const storageSetup = async () => {
let errorMessage = undefined;

try {
const granted = await navigator.storage.persist();
if (granted)
console.log("Storage is now going to be persistent...", granted);
} catch (error) {
errorMessage = `Client did not allow storage to be persistent..${error}`;
}

try {
const response = await navigator.storage.estimate();
console.log("Storage Estimate, ", response, "Usage: ", (response.usage * 100 / response.quota).toFixed(2));
} catch (error) {
errorMessage = `estimate() is not supported on tablet, ${error}`;
}

最佳答案

您使用的文档适用于 StoreManager,而不是 navigator.storage

  const storageSetup = async () => {
let errorMessage = undefined;
const storage = navigator.storage || StoreManager;
try {
const granted = await storage.persist();
if (granted)
console.log("Storage is now going to be persistent...", granted);
} catch (error) {
errorMessage = `Client did not allow storage to be persistent..${error}`;
}

try {
const response = await navigator.storage.estimate();
console.log("Storage Estimate, ", response, "Usage: ", (response.usage * 100 / response.quota).toFixed(2));
} catch (error) {
errorMessage = `estimate() is not supported on tablet, ${error}`;
}

关于javascript - Chrome 版本。 58 "TypeError: navigator.storage.estimate is not a function",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61274530/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com