首页 > 解决方案 > 数组(仅用于构建要传递给 api 的数据)是否应该处于状态?

问题描述

在我的屏幕中,我有一个数组,我会慢慢地将数据附加到该数组中,然后发送到 API。由于这些数据从未真正暴露给用户,我想知道我将其保持在状态中的实现是否正确,或者是否有更好的方法(使用变量等)?

我仍然很难理解何时应该使用状态而不是不使用状态。

我当前的实现(我传递的数组是以下状态的“更新”:

  const [update, setUpdate] = useState([]);
  const [buttonText, setButtonText] = useState("Next");
  const [position, setPosition] = useState(0);


...

  const handlePress = () => {

    var total = group.questions.length - 1;
    var next_position = position + 1;

    var col = {
      response,
      user: 1,
      update: update_id,
      question: group.questions[position].id,
    };

    const newState: Array = [...update, col];

    if (next_position < total) {
      setPosition(position + 1);
      setUpdate(newState);
      setResponse("");
    } else if (next_position === total) {
      setButtonText("Complete");
      setUpdate(newState);
      setPosition(position + 1);

      setResponse("");
    } else {
      navigation.replace("Dashboard");
    }
  };

标签: javascriptreactjsreact-nativereact-hooks

解决方案


推荐阅读