首页 > 解决方案 > 尝试使用子节点创建新节点时出现 FIREBASE 和 React Native 错误(然后不是函数)

问题描述

我不能用孩子创建一个新节点。

export const salvarDisciplinas = ({ terca}) => {
return dispatch => {
        var estudante = firebase.database().ref('DiasSemana/');
        estudante.child("DiasSemanaDisciplinas").child("Segunda").child(terca)

        .then(value => cadastro_disciplinas_sucesso(dispatch))
        .catch(erro => cadastro_disciplinas_erro(erro, dispatch));
}}

我想创造这种方式。

DiasSemana
 |
 |__DiasSemanaDisciplinas
       |
       |__Segunda
            |
            |__terca

生成的错误是:aluno.child ("DiasSemanaDisciplinas")。孩子(“塞贡达”)。Child (Monday) .then 不是函数。

我感谢你的帮助。

标签: reactjsfirebasereact-nativefirebase-realtime-databaseredux

解决方案


您需要使用set()向属性添加值:

export const salvarDisciplinas = ({ terca}) => {
return dispatch => {
        var estudante = firebase.database().ref('DiasSemana/');
        estudante.child("DiasSemanaDisciplinas").child("Segunda").child("terca").set(terca)

        .then(value => cadastro_disciplinas_sucesso(dispatch))
        .catch(erro => cadastro_disciplinas_erro(erro, dispatch));
}}

此外,由于set()返回 aPromise然后您可以使用该then()方法。

https://firebase.google.com/docs/reference/js/firebase.database.Reference#returns-promise--any-_1


推荐阅读