javascript - 如何添加新 key :value pair to an already existing array state variable react native

标签 javascript sqlite react-native expo

我有一个数据库函数,它从 sqlite 数据库返回一些行,然后将其存储在状态中

rows = await ReturnSelectedSymbolsDB()
this.setState({ symbols: rows })

数组看起来像这样

symbols: [{key: "0", symbol:"name1", active: false},{key:"1", symbol:"name2",active: false}]

我有另一个数据库函数,它返回一些行,我希望将它们添加到symbol,所以它看起来像这样。

symbols: [{key: "0", symbol:"name1", active: false, newKey: newValue},{key:"1", symbol:"name2",active: false, newKey, newValue2}]

第二个函数将从数据库返回多行,这些行很容易与符号匹配,因为符号:符号将匹配其他函数:符号。

通常情况下,您只需将其编写为常规 SQL 查询,使用内部联接将 2 个表连接在一起,然后将结果行放入状态变量中,但在这种情况下我不能,必须逐段构建状态变量。

这可以用普通的 JavaScript 来完成吗?

编辑: 可能不清楚,但 newKey 可以有不同的值,具体取决于 symbol 的名称

最佳答案

您可以创建一个新的 util 函数,在其中可以向数组内的所有对象添加新 key 。

addKey(symbol) {
   let newArray=[...symbol];
   return newArray.map((ele, i) => {
      return {...ele, newKey: newValue};
   })
}

快乐编码:)

关于javascript - 如何添加新 key :value pair to an already existing array state variable react native,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56033636/

相关文章:

javascript - 在一页上有多个 mat-button-toggle-groups

javascript - d3js不进入行功能

android - 如何将来自两个单独表的数据合并到一个 Cursor 中?

sql - 如何获得这个特定 "query"的结果

ios - 无法在 iOS 中连接 SQLite 数据库

react-native - 将 sdk 38 更新到 39 时,使用 expo React Native 执行应用程序时出错

javascript - 像素和浏览器与我的 jQuery 效果有关的小问题

javascript - 将 html/css/javascript 与 phonegap 一起使用而不是 Objective-C (iPhone) 的缺点

javascript - 在世博会中打开相机

reactjs - react 生命周期 : phases