【发布时间】:2019-01-22 07:42:43
【问题描述】:
我尝试通过 ID 删除“能力”
DDB 模型: 能力
id(from firebase): - competence: "string"
- definition: "string"
- icon: "string"
我使用:
deleteData(key){
firebase.database().ref('competences/').child(key).remove();
}
<tbody>
{this.state.items.map((element) => {
return (<tr>
<td>{element.competence}</td>
<td>{element.definition}</td>
<td><img src={element.icon} style={imgStyle}/></td>
<td><button onclick={this.deleteData(element)}>supp</button></td>
</tr>)
})}
</tbody>
但我有一个错误: 错误:Reference.child 失败:第一个参数是无效路径 =“[object Object]”。路径必须是非空字符串,并且不能包含“.”、“#”、“$”、“[”或“]”
【问题讨论】:
-
key等于什么?
-
权限 UID 正常,不是吗?是 ref('competences/') 的子级
-
是
competences数据库名称吗?试试这个firebase.database().ref().child(key).remove(); -
我想你需要使用
<button onclick={() => this.deleteData(element.competence)}>supp</button></td> -
@PeterHaddad : TypeError: pathString.replace 不是函数