Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/430.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在redux中使用异步存储保存布尔数据_Javascript_Java_Android_Ios_React Native - Fatal编程技术网

Javascript 在redux中使用异步存储保存布尔数据

Javascript 在redux中使用异步存储保存布尔数据,javascript,java,android,ios,react-native,Javascript,Java,Android,Ios,React Native,我想在单击按钮时将状态设置为“true”或“false”,并在react native with redux中使用AsyncStorage进行保存。 我做得对吗?请帮我修一下 import { AsyncStorage } from "react-native"; import { START_TOOLTIP_BUDGET, STOP_TOOLTIP_BUDGET } from "../actions/ActionTypes"; const INIT_STATE = true; exp

我想在单击按钮时将状态设置为“true”或“false”,并在react native with redux中使用AsyncStorage进行保存。 我做得对吗?请帮我修一下

import { AsyncStorage } from "react-native";
import {
  START_TOOLTIP_BUDGET,
  STOP_TOOLTIP_BUDGET
} from "../actions/ActionTypes";

const INIT_STATE = true;
export default (state = INIT_STATE, action) => {
  switch (action.type) {
    case START_TOOLTIP_BUDGET:
      AsyncStorage.setItem("INIT_STATE", JSON.stringify(true));
      return INIT_STATE;

    case STOP_TOOLTIP_BUDGET:
      AsyncStorage.setItem("INIT_STATE", JSON.stringify(false));
      return INIT_STATE;
    default:
      return state;
  }
};

是的,您可以正确地执行此操作,但如果您返回INIT_STATE true或false,则可以获取当前类的当前数据。否则每次都返回true

export default (state = INIT_STATE, action) => {
  switch (action.type) {
    case START_TOOLTIP_BUDGET:
      AsyncStorage.setItem("INIT_STATE", JSON.stringify(true));
      return true;

    case STOP_TOOLTIP_BUDGET:
      AsyncStorage.setItem("INIT_STATE", JSON.stringify(false));
      return false;
    default:
      return state;
  }
};
然后单击按钮从类中获取它。您还可以获取异步存储项

AsyncStorage.getItem("INIT_STATE")
    .then(req => JSON.parse(req))
    .then(data => {
        if (data !== null) { 
          console.log(data); // true or false 
        }
    }).done();