【问题标题】:add item to array(Hooks) react js将项目添加到数组(挂钩)反应js
【发布时间】:2021-07-01 02:42:48
【问题描述】:

我观看了有关 react js 的课程 并在其中向数组(钩子)添加一个新项,如下所示:

useState([new item , old Array]);

但我重复一遍,数组变成了一个对象

无论我搜索什么,我都看到了以下结果:

useState([ old array ,new item ]);

但该方法在课程中效果很好

【问题讨论】:

    标签: reactjs react-hooks react-props use-state


    【解决方案1】:

    要使用 React 钩子向数组添加项,您需要使用扩展运算符获取旧数组,然后添加新项。

    setState([...oldArray, newItem])

    【讨论】:

    • @Morteza.s17 确保在更新它时使用 setState 函数而不是 useState ,这就是你的问题
    【解决方案2】:

    您应该使用扩展运算符:setState(prev => [...prev, newItem]);

    【讨论】:

      【解决方案3】:

      使用 react-hooks 更新数组的更好方法是将回调函数传递给钩子,如下所示:

      setState((oldState) => [...oldState, newItem])
      

      这被认为是一种最佳实践,比直接传播旧状态的性能要好得多。

      【讨论】:

        猜你喜欢
        • 2020-10-25
        • 2021-10-18
        • 2022-12-03
        • 2019-11-17
        • 1970-01-01
        • 2021-12-17
        • 2019-06-16
        • 1970-01-01
        • 2017-10-10
        相关资源
        最近更新 更多