Arrays ReactJS钩子使用另一个数组更新一个数组

Arrays ReactJS钩子使用另一个数组更新一个数组,arrays,reactjs,react-hooks,Arrays,Reactjs,React Hooks,我想用另一个数组更新一个空数组, 我真的不知道该怎么做 const [avatar, setAvatar] = useState([]); 我想用另一个数组更新空数组,如下所示: PlayerService.getAvatars() .then(response => { setAvatar(avatar => [...avatar, response])

我想用另一个数组更新一个空数组, 我真的不知道该怎么做

const [avatar, setAvatar] = useState([]);
我想用另一个数组更新空数组,如下所示:

PlayerService.getAvatars()
                    .then(response => {
                        setAvatar(avatar => [...avatar, response])
                    })
这里的问题是,我从回复中得到的4项, 它们将被设置为化身阵列的第一个元素,而不是多个

这意味着,我在阿凡达[0]下,所有的物品放在一起,它们不会像应该的那样分开


我希望你能跟我来,我不是以英语为母语的人

如果你想把两个数组像这样组合起来,你可以使用concat数组

PlayerService.getAvatars()
    .then(response => {
        let arr1 = avtar;
        let arr2 = response;
        let arr3 = arr1.concat(arr2);
        setAvatar(arr3)
    })

尝试
setAvatar(response)
如果response是一个数组,那么它非常奇怪,在arr3中是所有元素,但是如果我设置了avatar,然后是console.log,那么它仍然是空的。。o、 这就是异步操作。在返回之前对其进行控制台并再次检查。啊,太好了,我不知道它是异步的,所以最后我可以做setAvatar(response),但是感谢所有的信息,它帮助我解决了我的问题