gpt4 book ai didi

javascript - push()中插入子节点数组的问题

转载 作者:行者123 更新时间:2023-11-30 19:50:52 25 4
gpt4 key购买 nike

我有以下代码:

export const createCharacter = (username, name, sex, vocation, achievementPoints, world) => {
return (dispath) => {
firebase.auth().signInWithEmailAndPassword('dev7@gmail.com', '123123')
.then(value => {
firebase.database().ref('/sales/')
.push({
owner: username,
character: [
{
name: name,
sex: sex,
vocation: vocation,
achievementPoints: achievementPoints,
world: world
}
],
price: 21.12
})
.then(() => {

})
})
.catch(error => alert(error))
}
}

...我得到了以下结果:

Result in firebase

当我第一次尝试执行 action 方法时,我发现了这个错误:

Error: Reference.push failed: first argument contains undefined in property sales.character.0.name

但是当我在没有刷新的情况下第二次执行时,推送成功。

我的问题是,我应该如何推送才能不生成这个 UID?

最佳答案

当您将对象传递给 Firebase 时,属性的值可以是一个值或 null。它们不能未定义,

firebase.database().ref('/sales/')
.push({
owner: username || null,
character: [
{
name: name || null,
sex: sex || null,
vocation: vocation || null,
achievementPoints: achievementPoints || null,
world: world || null
}
],
price: 21.12
})

关于javascript - push()中插入子节点数组的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54487566/

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