首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在iOS/Android中管理全局状态?

如何在iOS/Android中管理全局状态?
EN

Stack Overflow用户
提问于 2018-03-11 03:45:29
回答 2查看 643关注 0票数 2

我曾经使用react-native开发移动应用程序,原因很多,我已经放弃了。但是,我喜欢JavaScrip应用程序的一件事是,您有像redux这样的状态容器。

我想知道人们如何在iOS和Android?中管理全球国家。

有两种方案可以帮助您理解我的问题:

  1. 用户已登录。当用户在屏幕之间导航时,我如何知道用户是否已登录?我必须在周围传递currentUser属性吗?
  2. 假设我正在编写twitter克隆,用户可以like一条推特或点击它,然后转到另一页查看推特的细节。用户还可以在细节屏幕上like推特。返回时,主屏幕上的like按钮也会被激活,因为用户liked在细节屏幕上发布了这条消息。

这两件事都可以在reactreact-native中使用

代码语言:javascript
复制
componentWillReceiveProps(nextProps)

我想知道实现这一目标的iOS和Android方法是什么?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-03-11 04:54:43

为了通过多个屏幕/活动维护用户登录状态,您可以在android共享首选项中维护用户登录状态,并且可以使用函数创建一个类MiscUtils。

代码语言:javascript
复制
public static isUserLoggedIn()
{
return userLoginState//Based on the variable you stored in shared preference
}

现在您可以使用这个函数,并在这个类中添加更多函数来访问多个活动中的用户属性。

  1. 如果用户喜欢活动A中的一条推文,然后转到详细的活动(比如B ),因为B从A(它有tweet喜欢的变量)获取它的所有数据,B就会显示tweet类似的信息,或者您可以从网络中获取详细信息。无论是哪种情况,现在情况都是这样的,用户喜欢B中的tweet并返回到A中,在Android中有一个名为startActivityForResult的东西,您可以使用它来设置结果onActivityResult,它可以在一个包中设置结果onActivityResult,当然也可以更新数据,无论您将其存储在哪里,以及onActivityResult中的Activity,您都可以使用活动B设置的这些属性来显示更新的ui。
票数 0
EN

Stack Overflow用户

发布于 2018-03-11 04:51:52

您可以使用减速机,这是Java的redux变体。

减速器可以帮助你使你的状态突变更容易读,写和推理。它利用注释处理来验证正确性,并在编译时生成样板代码,允许您以简洁的方式将状态还原器表示为纯java函数。它还符合Redux原则:

  1. 真理的单一来源
  2. 状态是只读的。
  3. 使用纯函数进行更改。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49216438

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档