如何将字符串添加到数组?

Luckydev

const [userOrderCollection, setUserOrderCollection] = useState([{
  url: null
}]);

const onAddedUserOrder = url => {
  if (userOrderCollection[0].url === url) return;
  else {
    setUserOrderCollection([{ ...userOrderCollection,
      url
    }]);
    console.log(userOrderCollection)
  }
};
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/16.6.3/umd/react.production.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.6.3/umd/react-dom.production.min.js"></script>

但是,该行仅添加一次,第一次单击时,控制台中出现一个空数组,只有第二次单击时,才会触发添加...

隐晶

您实际上并没有在数组中添加任何内容,而是不断地创建单个元素的数组。此外,此时控制台日志不会显示更新状态。

尝试这个:

const [userOrderCollection, setUserOrderCollection] = useState([]);

const onAddedUserOrder = url => {
  if (userOrderCollection.find(user => user.url === url)) return;
  else {
    setUserOrderCollection(prev => ([ ...prev, { url } ]));
  }
};

如果您想在更新后查看状态,则应在 useEffect

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何将字符串数组的元素添加到字符串数组列表?

如何将字符串添加到数组并返回字符串

如何将字符串(单词)添加到字符串[]数组?Java,输入

如何将信息添加到字符串

如何将字符数组中的字符串添加到 C 中的字符串

如何将包含特定字符串的URL添加到数组中?

如何将字符串数组从单独的方法添加到JList模型?

如何将字符串添加到string []数组?没有.Add功能

如何将属性添加到字符串数组?

如何将字符串Array []元素转换/添加到List <String> []数组

如何将动态数据(如字符串数组)添加到微调器

如何将字符串索引签名添加到现有数组?

如何将字符串添加到数组的键并获取值

如何将字符串数组组件添加到 XML 配置中?

如何将多个文本文件中的字符串添加到数组

PHP 如何将数组添加到 Json 不像字符串

如何将字符串添加到 php 函数内的数组中

如何将Integer添加到字符串并获得字符串答案?

如何将数据参数添加到HTML字符串并返回字符串?

如何将子字符串添加到字符串中

如何将新的字符串元素添加到字符串列表?

如何将字符串添加到字符串流?

如何将数组连接到字符串并将其添加到带换行符的textarea中?

如何将一串字符串添加到列表中

如何将字符添加到字符串中的特定索引

如何将字符添加到字典的字符串中?

如何将字符添加到字符数组

将字符串数组添加到 JList

将字符串数组添加到ArrayList