gpt4 book ai didi

javascript - 将 firebase 中的数组插入子位置?

转载 作者:行者123 更新时间:2023-12-02 21:18:36 24 4
gpt4 key购买 nike

我从我提取的表中获取了一个数组,我试图将其作为子对象从对象中插入父对象。我知道 firebase 并不是真正为数组而设计的,那么我该如何最好地解决呢?这就是我所拥有的;

const exerciseName = document.getElementById("exercise-search");
const setAmount = document.getElementById("dynamicSet").innerHTML;

var HoeveelheidArr=[];
var Gewicht=[];

function getData(){
$('#resultTable .HoeveelheidField > input ').each(function() {
HoeveelheidArr.push($(this).val());
});
$('#resultTable .GewichtField > input').each(function() {
Gewicht.push($(this).val());
});
console.log(HoeveelheidArr);
console.log(Gewicht);
}

这是我卡住的部分,它是我尝试将数组发送到数据库并放入“setAm”对象下的部分:

function writeData(){
firebase.database().ref("Exercise").set({
nameExercise: exerciseName.value,
setAm: setAmount,
});
firebase.database().ref("Exercise/setAm")({
HoeveelheidArr,
Gewicht,
});
}

我怎样才能最好地解决这个问题?我不断收到错误

TypeError: firebase.database(...).ref(...) is not a function

最佳答案

最后一条语句中有语法错误,因为您缺少 set 调用:

firebase.database().ref("Exercise").set({
nameExercise: exerciseName.value,
setAm: setAmount,
});
firebase.database().ref("Exercise/setAm").set({ // this line changed
HoeveelheidArr,
Gewicht,
});
<小时/>

这两条语句的结果也可以通过一次调用 set 来实现:

firebase.database().ref("Exercise").set({
nameExercise: exerciseName.value,
setAm: {
HoeveelheidArr,
Gewicht,
}
});
<小时/>

如果您想在 Exercise 下创建子节点列表 [原文如此],您可以使用 Firebase 的 push() 方法。

firebase.database().ref("Exercise/setAm").push({
HoeveelheidArr,
Gewicht,
});
firebase.database().ref("Exercise/setAm").push({
HoeveelheidArr,
Gewicht,
});

这会在 setAm 下创建两个子节点,每个子节点都有一个唯一的键。

有关 push() 与使用数组的更多信息,请参阅博客文章 Best Practices: Arrays in Firebase .

关于javascript - 将 firebase 中的数组插入子位置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60908381/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com