Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/firebase/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reactjs 侦听器上带有react.on的Firebase不工作_Reactjs_Firebase_Firebase Realtime Database - Fatal编程技术网

Reactjs 侦听器上带有react.on的Firebase不工作

Reactjs 侦听器上带有react.on的Firebase不工作,reactjs,firebase,firebase-realtime-database,Reactjs,Firebase,Firebase Realtime Database,我正在使用firebase,出于某种原因,这只是工作,但现在它不是。我在一个输入上有一个onChange事件,它工作得很好,但由于某些原因,firebase.on方法对我不起作用 以下是我所拥有的: updateUsername(event) { this.setState({ [event.target.name]: event.target.value }); const usernameRef = fire.database().ref('userna

我正在使用firebase,出于某种原因,这只是工作,但现在它不是。我在一个输入上有一个onChange事件,它工作得很好,但由于某些原因,firebase.on方法对我不起作用

以下是我所拥有的:

updateUsername(event) {
    this.setState({
      [event.target.name]: event.target.value
    });

    const usernameRef = fire.database().ref('usernames');
    if (event.target.value) {
      usernameRef.child(event.target.value).on('value', snap => {
        console.log(snap.val()); // returns nothing
        if (snap.val() != null) {
          this.setState({
            disabled: true
          });
        } else if (snap.val() == null) {
          this.setState({
            disabled: false
          });
        }
      });
    }
  }

我不知道为什么它在早些时候起作用,但我需要将我项目的firebase控制台中的.read规则更改为true

旧规则:

{
  "rules": {
    ".read": "auth != null",
    ".write": "auth != null"
  }
}
新规则:

{
  "rules": {
    ".read": true,
    ".write": "auth != null"
  }
}