问题标签 [ionic-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 投票
2 回答
648 浏览

ionic2 - Ionic 2+ how long is the information saved in local storage?

I have a simple database that saves words and I'm trying to do as little database requests as possible in my app. I thought I would simply call a get request at the app startup and store all the words into the Ionic local storage and then call them when needed.

I'm wondering how long the information stored in the local storage is being kept - does it clear when the user closes the app? Or does it clear when the phone is being restarted? Or is it kept till I clear it in my code?

0 投票
1 回答
3933 浏览

javascript - Ionic 3 在运行功能之前等待存储承诺完全完成

我正在尝试使用离子存储中的令牌从服务器获取数据。我遇到的问题是获取令牌承诺无法按时检索令牌。因此,每当我重新加载或重新打开应用程序时,它有时会返回未经授权的错误。

仪表板-service.ts

仪表板.ts

0 投票
0 回答
1620 浏览

sqlite - 离子存储与 sqlite?

我是 ionic 3 的新手,我需要在相应的存储中维护离线数据,并在网络恢复时保留数据。

我经历了很多研究,其中一个选择天气使用离子存储,它在后台使用 Cordova s​​qlite 以键值对的形式存储数据或使用 sqlite 编写查询并以表的形式存储数据。在处理离线数据时,哪一种效率更高?假设我需要从 100 个对象中保存一个对象。我想编写一个查询来选择该对象,或者我需要迭代 100 次以选择适当的对象?

如果我的问题不清楚,请在下面的评论中提及。

0 投票
1 回答
1908 浏览

ionic-framework - 离子存储模块给出角度为 5 的 OpaqueToken 错误

我已将我的 ionic 项目更新为 angular 5,并且使用许多 ionic 本机插件出现以下错误..

angular/core/core"' 没有导出成员 'OpaqueToken

解决了更新到最新版本后的所有问题,除了离子存储。仍然给出这个错误

node_modules/@ionic/storage/es2015/storage.d.ts import { OpaqueToken } from '@angular/core';

我们可以看到一个未解决的问题 @github ( 142 ),但没有找到修复或解决方法。

0 投票
1 回答
147 浏览

typescript - Ionic 2 - 我如何排队对存储做出的异步承诺

我正在使用 Ionic 2 开发一个应用程序。我正在使用 Ionic Native Storage 插件来存储键值对。为了解决并发问题,我想对存储的调用进行排队。

例如,我有 saveJob()、getJob() 和 deleteJob(),它们都返回 Promises。

假设这些方法是随机调用的。

我可以将这些电话排队吗?我想在 StorageService 提供程序中处理这个问题,以便我的应用程序的其余部分可以继续调用 StorageService,甚至不会注意到调用已排队。

0 投票
1 回答
22 浏览

cordova - 使用 IonicStorage 在 Chrome 中进行离子测试

我正在使用新的 IonicStorage 构建一个 Ionic 3 应用程序。我正在设置一个 BearerToken...

一切正常,一切都很好地恢复了......直到......我对代码进行了更改并发生了实时重新加载。当平台准备就绪时,它应该检索令牌:

但是该值始终为空,就好像它完全被擦除了一样。这是在浏览器中测试时应该采用的方式吗?

0 投票
0 回答
343 浏览

ionic-framework - 如何在离子存储中执行 find() 和比较值?

'@ionic/storage'在我的应用程序中使用,我在其中存储值。但是,我想对这些值执行一些检查/查找。我已经弄清楚如何在数组(nameData)上执行它,但不知道如何在 ionic/storage 中查找元素。

如果传递的参数与 nameData 数组中的 key:value 匹配,则此函数返回 true。

如何使用 执行类似的功能'@ionic/Storage'

PS 存储键 nameData 包含 nameData 数组的副本。nameCheck() 应该返回布尔值。

0 投票
2 回答
716 浏览

ionic3 - 未捕获(承诺):QuotaExceededError Ionic 3

StackOverflow 已经有这种类型的问题,但没有一个答案对我有帮助, 这是我的问题详细信息- 当我在 android 设备中构建应用程序时出现错误,它在模拟器和浏览器中工作正常,但是当我将应用程序运行到设备中时我收到此错误,我的数据无法保存在存储中。

这是我的依赖项

这是我的 app.module.ts 导入数组

我想在用户登录成功时保存数据,这是我的用户登录代码并将用户保存到存储中。

正确的方向将不胜感激。谢谢

0 投票
0 回答
327 浏览

ionic-framework - 减少内存空间的离子存储问题

我在我的应用程序中使用离子存储,它需要近 1GB 的设备空间来启动应用程序。如果设备内存没有至少 1GB 的空间应用程序将不会启动。清除该内存后,我就可以启动了。

这样,我在登录到本地存储后尝试保存一些数据。

如果设备的可用空间大于 1GB,这可以正常工作,但如果内存较少,则会失败。

请帮我解决这个问题。我是新的离子我正在使用

离子框架:3.9.2

离子应用脚本:3.1.2

角核心:5.0.0

0 投票
1 回答
2272 浏览

typescript - 离子存储模块设置和获取对象而不是字符串

我需要在没有经典数据库的 Ionic 3 应用程序中保存一些用户名(输入)和图片(代码中未显示另一个按钮,但我认为逻辑将相同)(认为我将使用 base 64 作为基于图片的从设备的相机上)。然后我应该检索它们以使用它创建离子卡配置文件。

实际上,每次我运行我的 loadUser() 函数时,它只会检索我最后一个用户名,但我想保存更多。即使我进入 chrome DevTools/IndexedDB,我也只能看到一个keyvalue保存。

我需要像数据库一样持久化这些键和值。

使用带有 NgModel 的输入和 2 个按钮(一个用于设置数据,一个用于获取数据)我试图在我的 Ionic 3 应用程序(没有 Sql Lite)中保存一些用户名,但我看到 storage.set 只接受字符串值。我的想法是用来JSON.parse检索保存在数组中的数据,但值在开始时是字符串,所以如果你有任何想法,请告诉我。Bellow 是我尝试过的代码,但出现错误:“ core.js:1449 错误错误:未捕获(承诺中):SyntaxError:JSON 中位置 0 的意外令牌 d SyntaxError:JSON 位置 0 处意外的令牌 d。解析()

PS:如果您还不够清楚,请随时问我在附近一段时间。这是我的代码:

参数.ts

参数.html: