Redux не обновляет состояние сразу - PullRequest
0 голосов
/ 29 марта 2020

Я работаю над формулой. Я получаю свои данные через Api и имя пользователя через Picker

 const [selectedFriend, setSelectedFriend] = useState("");

.

const data = useCallback(() => {
const jobData = {
  description: props.Plot,
  titel: props.Title,
  year: props.Year,
  friend: selectedFriend,
};

dispatch(jobActions.postJob(jobData));
}, [description, titel, friend, ]);

.

      <Picker
        style={{ flex: 1, color: "white", textAlign: "center" }}
        selectedValue={selectedFriend}
        onValueChange={newFriendName => setSelectedFriend(newFriendName)}
      >
        {allFriendlist.map((item, index) => {
          return (
            <Picker.Item
              label={item.id}
              value={item.id}
              key={index}
              style={{ color: "white", textAlign: "center" }}
            />
          );
        })}
      </Picker>

при успешной отправке я получаю предупреждение. При нажатии Да он должен установить мое значение selectedFriend в пустую строку. Но, похоже, мой магазин - это «пик позади». Если я выберу свое имя из списка и попытаюсь отправить форму, ничего не произойдет. Если я изменю что-то вроде ";" в моем коде, и он перезагружает его загрузить мое предыдущее состояние. Я уже третий день пытаюсь разгадать эту тайну.

  useEffect(() => {
    if (jobCreated) {
      Alert.alert(".", "", [
        {
          text: "yes",
          onPress: () => {
            setDescription("");
            setTitel("");
            setfName("");
            setSelectedFriend("")

            console.log(selectedFriend);
          }
        }
      ]);
    }
  }, [jobCreated]);

Большое спасибо! Если потребуется дополнительная информация, я предоставлю ее.

Спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...