Javascript React本机Firebase仅获取一个数据

Javascript React本机Firebase仅获取一个数据,javascript,reactjs,firebase,react-native,firebase-realtime-database,Javascript,Reactjs,Firebase,React Native,Firebase Realtime Database,如何仅获取一个数据并将其写入标头? 我正在使用firebase和react redux firebase结构我试着写“组织机构””:inovanka: 操作文件代码: import firebase from 'firebase'; import { Actions } from 'react-native-router-flux'; import { ORGANIZATION_NAME_DATA_SUCCESS } from './types'; export const organi

如何仅获取一个数据并将其写入标头?
我正在使用firebase和react redux

firebase结构我试着写“组织机构””:inovanka:

操作文件代码:

import firebase from 'firebase';
import { Actions } from 'react-native-router-flux';
import { ORGANIZATION_NAME_DATA_SUCCESS } from './types';


 export const organizationName = () => {
    const { currentUser } = firebase.auth();
      return (dispatch) => {
        firebase.database().ref(`/organizations/${currentUser.uid}`)
          .on('value', snapshot => {
            dispatch({ type: ORGANIZATION_NAME_DATA_SUCCESS, payload: snapshot.val() });
        });
    };
  }
减速器文件:

import { ORGANIZATION_NAME_DATA_SUCCESS } from '../actions/types';

const INITIAL_STATE = {

};

export default (state = INITIAL_STATE, action) => {
  switch (action.type) {
    case ORGANIZATION_NAME_DATA_SUCCESS:
      console.log(action); // data retrieved as array
      return action.payload
    default:
      return state;
  }
};
组件:(我想把它写到这个)

类主页扩展组件{
componentWillMount(){
}
render(){
返回(
我想把它写在这里
);
}
}
常量mapStateToProps=({homepageResponse})=>{
const organizationArray=\映射(homepageResponse,(val,uid)=>{
返回{…val,uid}//
});
返回{organizationArray};
};
导出默认连接(MapStateTops,{organizationName})(主页);
更改此选项:

firebase.database().ref(`/organizations/${currentUser.uid}`)
      .on('value', snapshot => {
为此:

firebase.database().ref(`/organizations/${currentUser.uid}`)
      .once('value', snapshot => {
使用
once()
将只读取一次数据,因此只获取一个数据

更改此设置:

firebase.database().ref(`/organizations/${currentUser.uid}`)
      .on('value', snapshot => {
为此:

firebase.database().ref(`/organizations/${currentUser.uid}`)
      .once('value', snapshot => {
使用
once()
将只读取一次数据,因此只获取一个数据解决方案就在这里

操作文件:

export const organizationName = () => {
    const { currentUser } = firebase.auth();
      return (dispatch) => {
        firebase.database().ref(`/organizations/${currentUser.uid}`)
        .once('value', snapshot => {
          _.mapValues(snapshot.val(), o => {
            console.log(o);
          dispatch({ type: ORGANIZATION_NAME_DATA_SUCCESS, payload: {organization: o.organization, fullname: o.fullname }});
          });
        });
    };
  }
render() {
    return (
      <Container>
        <Header>
          <Text>  { this.props.organization } </Text>
        </Header>
      </Container>
}
缩减器文件

组件文件映射到状态props和组件willmount

*最后一步标题*

export const organizationName = () => {
    const { currentUser } = firebase.auth();
      return (dispatch) => {
        firebase.database().ref(`/organizations/${currentUser.uid}`)
        .once('value', snapshot => {
          _.mapValues(snapshot.val(), o => {
            console.log(o);
          dispatch({ type: ORGANIZATION_NAME_DATA_SUCCESS, payload: {organization: o.organization, fullname: o.fullname }});
          });
        });
    };
  }
render() {
    return (
      <Container>
        <Header>
          <Text>  { this.props.organization } </Text>
        </Header>
      </Container>
}
render(){
返回(
{this.props.organization}
}
谢谢大家解决方案就在这里

操作文件:

export const organizationName = () => {
    const { currentUser } = firebase.auth();
      return (dispatch) => {
        firebase.database().ref(`/organizations/${currentUser.uid}`)
        .once('value', snapshot => {
          _.mapValues(snapshot.val(), o => {
            console.log(o);
          dispatch({ type: ORGANIZATION_NAME_DATA_SUCCESS, payload: {organization: o.organization, fullname: o.fullname }});
          });
        });
    };
  }
render() {
    return (
      <Container>
        <Header>
          <Text>  { this.props.organization } </Text>
        </Header>
      </Container>
}
缩减器文件

组件文件映射到状态props和组件willmount

*最后一步标题*

export const organizationName = () => {
    const { currentUser } = firebase.auth();
      return (dispatch) => {
        firebase.database().ref(`/organizations/${currentUser.uid}`)
        .once('value', snapshot => {
          _.mapValues(snapshot.val(), o => {
            console.log(o);
          dispatch({ type: ORGANIZATION_NAME_DATA_SUCCESS, payload: {organization: o.organization, fullname: o.fullname }});
          });
        });
    };
  }
render() {
    return (
      <Container>
        <Header>
          <Text>  { this.props.organization } </Text>
        </Header>
      </Container>
}
render(){
返回(
{this.props.organization}
}

谢谢大家

Firebase实时数据库:organizations JJaDV2z4zsdHUaGdqLuBVN2KY903-L7TxaX4jgvsdPfG9YRp organization:“inovanka”为用户只获取一个组织,
Firebase.database().ref(`/organizations/${currentUser.uid}').orderByKey().limitToFirst(1).on('value',snapshot=>{
。谢谢您,先生,我尝试了您的代码和console.log(操作)。但是console.log是空的。@FrankvanPuffelen是的,我再试了一次。它只获取了一个数据。但是我想。一次('value',快照也可以使用。感谢firebase实时数据库:organizations JJaDV2z4zsdHUaGdqLuBVN2KY903-L7TX4JGVSDPFG9YRP organization:“inovanka”为用户仅获取一个组织,
firebase.database().ref(`/organizations/${currentUser.uid}')。orderByKey().limitToFirst(1)。on('value',snapshot=>{
。谢谢您,先生,我尝试了您的代码和console.log(操作)。但是console.log是空的。@FrankvanPuffelen是的,我又尝试了一次。它只获取了一个数据。但是我想。一次(“值”,快照也可以工作。谢谢你好,彼得,是的,我已经尝试过了。它只获取一个数据。谢谢你,先生。现在我应该把数据写到你能帮我吗?你好,彼得,是的,我已经试过了。它只获取一个数据。谢谢你,先生。现在我应该把数据写到你能帮我吗?