【问题标题】:Store data while app is running [React Native]在应用程序运行时存储数据 [React Native]
【发布时间】:2019-06-20 03:48:36
【问题描述】:

我正在尝试在我的应用程序中设置一个变量,该变量仅在应用程序运行时处于活动状态,并在应用程序退出时被销毁。这个概念类似于网络浏览器中的会话,只有在浏览器关闭时会话才会被销毁。

由于某种原因,我不能使用state,因为它会在触发dispatch 操作时更新。我曾想过使用AsyncStorage.setItem(),但它在我的情况下也不起作用,因为它将变量存储在设备中。否则,当应用程序退出而不触发任何按钮时,还有一种方法可以removeItem

【问题讨论】:

标签: react-native variables session


【解决方案1】:

正如上面评论中指出的那样,AppState API 似乎是您的朋友。未经测试的示例代码:

class AppStateExample extends Component {

  componentDidMount() {
    this.temp = "something"
    AppState.addEventListener('change', this.handleAppStateChange);
  }

  handleAppStateChange = (nextAppState) => {
    if (nextAppState.match(/inactive|background/)) {
      this.temp = null
    }
  };

}

【讨论】:

    【解决方案2】:

    使用 redux,因为它确实具有您想要的相同行为。您可以存储在商店中,当应用退出时它会被销毁。

    【讨论】:

    • 我试试
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-11-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-08-20
    • 2019-02-04
    相关资源
    最近更新 更多