问题标签 [google-chrome-storage]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
152 浏览

google-chrome-extension - 监控 chrome.storage 油门限制

我在扩展中使用chrome.storage并希望避免由于超过同步或本地存储的记录限制之一而触发运行时错误。(像QUOTA_BYTESQUOTA_BYTES_PER_ITEM

我的第一选择是在生成运行时错误之前拦截这些错误;或者,我可以跟踪扩展端的使用情况并尽量避免触发它们。

这感觉像是一个必须有人解决的问题,但我似乎找不到任何解决方案 - 任何建议表示赞赏。

0 投票
1 回答
2840 浏览

javascript - 弹出窗口和浏览器操作窗口之间的 chrome.storage

我正在编写一个 chrome 扩展,我想用 chrome 存储管理所有数据/变量。据我了解,我应该能够在我的扩展程序中使用 chrome.storage。

我想在 browser_action 脚本中设置一些东西,然后在后台脚本创建的窗口中访问它。HTML 和 JS 文件都有相应的名称。

这是我没有运气的尝试:

//manifest.json

//背景.js

//setting.js

//newPage.js

当我这样做时,newPage.html 显示“脚本已加载...和状态:未定义”。

即使它是异步的,也应该在第二次运行脚本时填充存储值,对吗?

我可能只是使用不正确。如果是这种情况,在我的新窗口中设置 chrome 存储以访问的正确方法是什么?

任何帮助,将不胜感激!

0 投票
1 回答
1157 浏览

javascript - 如何使用 chrome.storage 扩展

我的扩展弹出页面从沙盒页面和脚本的消息中获取数据。我需要将它存储在 chrome.storage 中,最好使用 storage.sync 方法。我收到此错误: 未捕获的类型错误:无法读取未定义的属性“同步”

我已经在 manifest.json 中添加了存储权限。

...“权限”:[“存储”],... chrome.storage.sync 未定义?

谷歌还声明不需要背景脚本: https ://developer.chrome.com/extensions/storage

引用:您的扩展程序的内容脚本可以直接访问用户数据,而无需后台页面。

我在看什么?提前致谢!

0 投票
1 回答
173 浏览

javascript - chrome.storage.sync 未正确保存

我似乎无法弄清楚为什么在重新加载页面时它似乎没有保存(即使它似乎正在将对象保存到 storage.

以下是相关代码:

选项.js

console.log 显示的内容:

在此处输入图像描述

不知道为什么他们是空的。有什么帮助吗?

0 投票
1 回答
78 浏览

javascript - 从 chrome.storage.local 获取原始值

基本上,有一个存储的原语我想设置为 jQuery UI Tab 设置的值:

标准的 chrome-storage-get 协议非常复杂,我不确定如何简单地将对象属性值本身设置为值active:而不是对象。

有什么办法可以做到这一点?

0 投票
1 回答
2004 浏览

javascript - 如何使用 chrome 存储从对象中删除数据?

我有一个存储在 chrome 存储中的对象,如下所示:

我想做类似的事情chrome.storage.sync.remove([{"planA": "123"}]);

但这似乎不起作用Error in response to storage.get: Error: Invalid value for argument 1. Value does not match any valid type choices.

文档 StorageArea.remove(string or array of string keys, function callback)

蚂蚁的想法?

0 投票
2 回答
6574 浏览

google-chrome-extension - 从 Chrome 存储中获取多个项目?

我有 4 件我想要的物品,但我不确定如何分开钥匙。使用逗号会出错。这是我的用法示例:

我本以为它们会用逗号分隔,但我想不是。

0 投票
1 回答
2785 浏览

javascript - Chrome 存储 API 不适用于内容脚本

我正在使用 chrome 存储 API 来保存需要在内容脚本页面上访问的数据。当我像这样在扩展设置页面中加载数据时

它有效,但相同的代码不适用于内容脚本......

我收到此错误

未捕获的类型错误:无法读取未定义的属性“同步”

知道为什么吗?


编辑

0 投票
1 回答
388 浏览

javascript - 加载同步数据后 Chrome 扩展运行 Angular

从 chrome.storage 获取数据后如何运行 angularjs 引擎?

我有这个代码app.js

chrome获取数据后,运行angularjs引擎。

有什么解决办法吗?

0 投票
1 回答
1885 浏览

javascript - 在 Chrome 应用中保存文件

概括

通常我可以下载一堆文件,但是当下载发生时,Chrome 应用程序不会显示下载架。绕过 Chrome 应用程序限制的最佳方法是什么?

想法

  • 我可以通过创建一个 zip 文件来解决这个问题,但这需要用户执行一个额外的步骤来解压缩文件。
  • 我可以静默下载文件,因此可以在下载文件时向用户显示提示,但这需要用户手动在其下载文件夹中搜索文件。

我学到了什么

  • 互联网上的任何地方都告诉我使用 Chrome 的下载 API,但这仅适用于 Chrome 扩展程序,不适用于 Chrome 应用程序。
  • 我无法打开另存为窗口,因为 50 个文件的 50 个另存为窗口是不可接受的
  • 但是,我可以使用提示chrome.fileSystem.chooseEntry({'type': "openDirectory"}用户选择一个目录,但我找不到保存到该目录的方法。
  • 我的问题与Chrome 扩展如何将许多文件保存到用户指定的目录中基本相同?但是对于 Chrome 应用程序而不是扩展程序。

项目和示例代码

我正在构建的应用程序将与我构建的这个网页相同,但进行了一些修改以使其作为网络应用程序工作。

这就是我的网站解决问题的方式