【问题标题】:Values not showing in Firebase react and material-uiFirebase react 和 material-ui 中未显示的值
【发布时间】:2019-12-12 13:44:51
【问题描述】:

我有一个问题,我可以分派并将内容推送到 firebase,但 firebase 中没有数据,字符串为空。我想知道 material-ui 是否在这里引起了问题,或者我错过了什么?这也是代码。我一直试图弄清楚为什么这些值没有显示,并且想知道代码中的某个地方有错误,因为我相信它应该在技术上工作并且

empty values

// 动作

import firebase from 'firebase';
import { toast } from 'react-toastify';
import { 
    CREATE_USER,
    UPDATE_FORM
} from './ActionTypes';

export const formUpdate = ({ prop, value }) => {
    console.log("LOG", prop, value)
    return {
        type: UPDATE_FORM,
        payload: { prop, value }
    }
}

export const createProfile = ({ firstName, lastName, email, company, billingMethod }) => {
    // const { currentUser } = firebase.auth();

    return (dispatch) => {
        firebase.database().ref(`/profile`)
            .push({ firstName, lastName, email, company, billingMethod })
            .then(() => {
                dispatch({ type: CREATE_USER })
            })
            .then(() => {
                toast.info("User profile was created !", {
                    position: toast.POSITION.BOTTOM_CENTER,
                    autoClose: 1000
                  });
            })
    }
}

// 减速器

import {
    CREATE_USER,
    UPDATE_FORM
} from '../Actions/ActionTypes';


const INITIAL_STATE = {
    firstName: '',
    lastName: '',
    email: '',
    company: '',
    billingMethod: '',
}

export default (state = INITIAL_STATE, action: any) => {
    switch (action.type) {
        case UPDATE_FORM:
            return { ...state, [action.payload.prop]: action.payload.value }
        case CREATE_USER:
            return INITIAL_STATE
        default:
            return state
    }
}

【问题讨论】:

  • 和文件 //File pastebin.com/04Z5heeL
  • “我有一个问题,我可以分派并将东西推送到 firebase,但没有数据。”请澄清,哪里没有数据?您期望发生什么以及现在正在发生什么?
  • @JoshPittman 我编辑了这个问题。基本上当事情推动这就是我看到的i.stack.imgur.com/U8lTI.png那些字段应该有数据
  • 使用 firebase 函数没有问题。您没有从表单中获取数据。 Console.log 首先查看您的数据,看看您是否正在获取数据。
  • @JukkaKoivu 尝试添加更多代码。将组件连接到正在调度创建/更新操作的 redux。

标签: reactjs firebase firebase-realtime-database redux


【解决方案1】:

在 pastebin.com/TepX1Tgv 中,当您定义 const getStepContent = (step, props) => {...} 时,它需要两个参数。

实现时只传递一个参数

<Typography className={classes.instructions}>{getStepContent(activeStep)}</Typography>

传递 props 参数,以便您的所有组件都可以接收它们的 props。

【讨论】:

  • 不确定我是否理解那个。那么在getStepContent(activeStep, props) ?
  • 是的,你所有的组件都是基于来自这个函数的道具,但你没有传入道具<Typography className={classes.instructions}>{getStepContent(activeStep, ???NO PROPS HERE???)}</Typography>
  • 我在那里添加了道具,但是当我尝试在输入字段上键入时,我的表单字段变为空,同样的情况是值是空的
  • 进入getStepContent的道具是空的?您能否在每个步骤中记录您的道具并确定它们丢失的位置。
  • 例如,控制台日志中的名字提供了这个i.imgur.com/4fJAEr0.png,但计费方法提供了这个i.imgur.com/St5zhye.png,但是当我输入名字时它消失了,数据不会进入firebase跨度>
猜你喜欢
  • 2020-11-10
  • 2021-01-19
  • 2021-02-11
  • 2021-01-08
  • 2020-05-01
  • 2021-04-23
  • 1970-01-01
  • 2021-02-20
  • 2019-05-20
相关资源
最近更新 更多