reactjs - 从输入中选择数据
问题描述
我的应用程序使用具有不同值的选择,也可用作搜索。现在,如果我在插入 2 个名称后单击保存,我会得到一个包含 2 个对象的数组。之后,如果我只插入 1 个名称并单击保存,则先前的数组将更改为仅由 1 个元素组成的新数组,实际上我删除了第一个数组,但我不想丢失先前的数组。我想保留以前的数组,如果我要添加一个其中不存在的值,我想添加新值,事实上我将有一个包含 3 个对象的数组。如何解决这个问题?
链接到我的应用程序:https ://codesandbox.io/s/affectionate-ritchie-oxhuk
解决方案
基本上你需要做的是在每次保存按钮点击后保存(即连接数组)并只保存唯一的项目。
如果你熟悉 ES6,你可以使用JavaScript 的Set对象。它是一个从数组中选择独特项目的工具。
Array.from(new Set(savedItems.concat(selectedItems)).values())
您可以先连接两个数组,然后将它们设置为 Set 以删除重复项,然后将它们转换回原始数组。
推荐阅读
- python - 熊猫数据框问题:试图在数据框的切片副本上设置一个值
- angular - 在 Angular 中观看模板参考值的成本是多少
- magento - 订单小计为 0 时出现 PayPal 10413 错误
- spring-boot - PagingAndSortingRepository 按 URL 上的字段过滤
- matlab - 将公里转换为地理坐标的问题
- python - Numpy 函数检查 `>=0` 对浮点错误的容忍度
- maven - Maven 依赖项中有两个相同的类。密封违规
- mongodb - 将动态结构传递给golang中的函数
- php - 将 PHP 数组按列存储到 csv
- c++ - 仿射密码解密,输出大小写不同