React State Management — значение не обновляется при вызове API в AWS Amplify

avatar
Vivek Bijlwan
8 августа 2021 в 19:23
14
0
0

Я использую следующий код:

    const [questionList, setQuestionsList] = useState([]);
  const questionsToPass = {};
  const [questions, setQuestions] = useState([questionsToPass]);

  useEffect(() => {
    fetchQuestions();
  }, []);

  const fetchQuestions = async () => {
    try {
      const qResponse = await API.graphql(graphqlOperation(listBig5Questions));
      const qlist = qResponse.data.listBig5Questions.items;
      
      setQuestionsList(qlist);

      questionList.map((question) => {
        questionsToPass[question.id] = question.question;
      });

      console.log("questionsToPass are ", questionsToPass);
    } catch (error) {
      console.log("error fetching questions", error);
    }
  };

Проблема, с которой я столкнулся, заключается в том, что questionToPass заполняется только один раз, когда происходит новая компиляция. Во всех последующих обновлениях он остается пустым.

Пожалуйста, помогите мне, как заставить популяцию вообще обновляться.

Источник

Ответы (0)