reactjs - 反应状态管理 - AWS Amplify 中 API 调用的值未更新
问题描述
我正在使用以下代码:
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);
}
};
我面临的问题是 questionsToPass 仅在发生新编译时填充一次。在所有后续刷新中,它都是空白的。
请帮助我如何让人口也完全刷新。
解决方案
推荐阅读
- python - 为什么我在尝试添加 opencv 模块时在 PyCharm 中出现错误,尽管已经安装
- apache-spark - presto with hudi - 从表中选择 *
- python - 在 Airflow 上使用 PythonOperator 时如何使用 Python 函数的返回值/
- ruby - 为什么我的简单连接池不执行这些简单的 put 语句?
- git - 忽略 git checkout 中的脚本
- flutter - 如何将焦点设置到 ListView 中的 TextField
- r - 遍历 2 个不同长度的大数据帧(如果,否则)
- python - 使用python附加多个db3文件
- angular - 订阅不可分配给类型路由
- reactjs - React 函数组件 prop 默认使用 TypeScript