javascript - 数组(仅用于构建要传递给 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");
}
};
解决方案
推荐阅读
- matlab - 尝试读取大数据文件并将其存储在工作区中,以便其他功能可以使用它
- ruby - 如何在 ruby 客户端脚本中安全地存储身份验证凭据?
- c++ - 从服务调用的 VirtualProtectEx 返回 false,但 GetLastError 为 0(成功)
- ruby - 在 Windows 10 的 Ubuntu 上安装 Ruby 时,如何更改 Ruby 的 atom-runner 路径?
- java - 我的 Android 应用程序不支持 Android 版本 9
- android - Android,Kotlin:如何在 kotlin 的情况下将 MainActivity 的方法调用到子类方法中?
- php - 用社交名流谷歌登录后修复回家路线
- typescript - 在角度 7 中更新时图像不会动态变化
- ios - 如何使用 MapKit 显示该地区多家医院的注释?
- angularjs - 如何为电话号码编写自定义验证模式