gpt4 book ai didi

javascript - 如何使用 useState 打乱嵌套数组

转载 作者:行者123 更新时间:2023-12-05 01:25:58 27 4
gpt4 key购买 nike

我正在用 React Native 制作一个测验应用程序,我想打乱问题的顺序每次有人选择测验。我正在考虑使用 lodash 中的 shuffle,但我不确定如何处理嵌套数组。

const getTest = async () => {

try {
const response = await fetch('https://tgryl.pl/quiz/test/'.concat(route.params.testId));
const json = await response.json();
setData(json);
}
catch (error) {
console.error(error);
}
}

我在想像 setData(_.shuffle(data.tasks)) 这样的东西??我不知道

JSON 看起来像这样

enter image description here

最佳答案

显然,要打乱的数组存储在响应对象的 tasks 属性中,因此您应该打乱该数组并将其分配回该属性:

json.tasks = _.shuffle(json.tasks);
setData(json);

尽管这会改变一个对象,然后将其传递给 setData(大概会调用 setState/useState,并且这种改变通常是一个代码味道),这在这里不是问题,因为这个对象以前从未用于状态。

无关,但我不会将该变量称为 json。它是一个 JavaScript 对象。 JSON 是 json() 方法从请求中检索并转换为对象/数组的文本格式的术语。

使用描述内容的名称,例如quiz

关于javascript - 如何使用 useState 打乱嵌套数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70576415/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com