我有一个数组数组,我知道这是不实际的,但是我使用的组件(使用React.js)仅将数据作为数组数组使用,我在后端(Firestore)中删除了该数组的某些元素,我需要删除来自前端数组的数据。数组:
const myData = [
["2020-09-14", "15:00", "60", "Info", "April Tucker", "Other", "no"],
["2020-09-14", "2:00", "50", "Text", "April Tucker", "Other", "yes"]
]
当我在后端删除数据时,我将获得作为change.doc.data()删除的数据。然后,我试图在myData状态下查找已删除数据的索引。
if (change.type === 'removed') {
console.log('Removed data: ', change.doc.data())
const index = myData.indexOf(
(element) =>
element[0] == change.doc.data()[0] &&
element[1] == change.doc.data()[1] &&
element[2] == change.doc.data()[2] &&
element[3] == change.doc.data()[3] &&
element[4] == change.doc.data()[4] &&
element[5] == change.doc.data()[5] &&
element[6] == change.doc.data()[6]
)
console.log(index)
mydata.splice(index, 1)
}
这不起作用,返回索引-1。我还尝试了在myData数组上进行映射,但是我的方法没有成功。
我建议你看看这个网站
尤其是采用以下方法可以使您入门:
function arrayAlreadyHasArray(arr, subarr){
for(var i = 0; i<arr.length; i++){
let checker = false
for(var j = 0; j<arr[i].length; j++){
if(arr[i][j] === subarr[j]){
checker = true
} else {
checker = false
break;
}
}
if (checker){
return true
}
}
return false
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句