Javascript 如何保存firebase中每个项目的密钥

Javascript 如何保存firebase中每个项目的密钥,javascript,arrays,firebase,react-native,react-native-firebase,Javascript,Arrays,Firebase,React Native,React Native Firebase,我正在react原生项目中使用firebase。我正在保存项目,然后在我的应用程序中获取这些项目。但是现在我想根据firebase为您在ss中看到的每个项目生成的密钥来编辑和删除项目。 当我从firebase获得数据时,我得到的是项目,而不是每个项目的密钥。这就是为什么我无法编辑或删除项目 请帮助我如何做到这一点 这是我在firebase中添加项目的代码 export const addMeasurement = params => { return async dispatch

我正在react原生项目中使用firebase。我正在保存项目,然后在我的应用程序中获取这些项目。但是现在我想根据firebase为您在ss中看到的每个项目生成的密钥来编辑和删除项目。 当我从firebase获得数据时,我得到的是项目,而不是每个项目的密钥。这就是为什么我无法编辑或删除项目 请帮助我如何做到这一点

这是我在firebase中添加项目的代码

  export const addMeasurement = params => {
  return async dispatch => {
    dispatch(measurementLoading());
    try {
      firebaseService
        .database()
        .ref('/Measurements')
        .push(params)
        .then(res => {
          measurementAdded(res);
        });
    } catch (err) {
      dispatch(measurementFailed(err));
    }
  };
};
下面是从早期存储的firebase获取项目的代码

 export const getMeasurements = () => {
  return async dispatch => {
    dispatch(measurementLoading());
    try {
      const ref = firebaseService.database().ref('/Measurements');
      ref.on('value', snapshot => {
        const values = snapshot.val();

        if (values !== null) {
          const newFreshArr = Object.values(values);

          dispatch(measurementSuccess(newFreshArr));
        }
      });
    } catch (err) {
      dispatch(measurementFailed(err));
    }
  };
};

您可以获得快照的路径,如下所示:
let path=snapshot.ref.path.toString()。
然后,您可以使用该路径对Firebase数据库进行更改。
以下是关于这方面的文件: