【发布时间】:2016-07-04 02:29:33
【问题描述】:
我正在使用 ionic 2 框架,并尝试使用本地存储来存储网络状态
this.local = new Storage(LocalStorage);
this.local.set("status", this.status);
有两个值可以动态分配给状态,“强”和“弱”。
我能够在每个页面初始化时获取我的本地存储“状态”值的初始值。
toCheckStatus();
function toCheckStatus()
{
self.local = new Storage(LocalStorage);
self.local.get('status').then((value) =>
{
console.log("status", value);
});
}
这将返回一个“强”或“弱”,这正是我想要的,但是否有任何方法或事件可以动态(在“状态”值更改时)调用“toCheckStatus()”函数?
工作流程示例(伪代码):
- 在应用程序启动时 -> 检查互联网状态(后台将不断检查并更新本地存储值)
- 将状态存储到本地存储
- 调用函数获取值(我的值变化时如何动态调用这个函数,有什么方法吗?)
- 如果状态为弱 -> 显示弱图标
- 如果状态为强 -> 显示强图标
【问题讨论】:
-
你不也设置值吗?只需在设置状态时更改状态图标即可。
-
@Lifz 嗨 Lifz,是的,我也在更改值,但是当我的图标位于主页上时,值正在后台使用插件进行更改。
-
如果值在您的应用程序中发生更改,并且您可以控制该值何时更改,则可以触发自定义事件。然后你可以在你的应用程序中监听那个事件
-
@john 嗨,约翰,我可以知道您提到的内容是否有任何简单的示例吗?我很不擅长使用事件监听器..
-
我自己没有在 Angular 2 中做过,但这里有一个例子:stackoverflow.com/questions/33338276/angular-2-event-broadcast 可能会有所帮助。广播你的价值变化,然后倾听那个变化。
标签: javascript angular typescript ionic2