2017-10-05 9 views
0

firebaseで開始しましたが、しばらくの間迷惑な問題に遭遇しました。今までdatabaseオブジェクトをfirebase.database()で作成した場合、refメソッドを呼び出そうとすると、refメソッドが使用できません。私はJetBrainsからWEBSTORM IDEを使用しています。だから私はデータをプッシュ、それはデータベースに移動しません。ここに私のコードです。 以下のスクリプトの名前はmain.jsです。Firebase.database()オブジェクトには 'ref'メソッドまたは 'Reference'メソッドがありません。

firebase.initializeApp(config); 
function loginclicked() 
{ 

    var database = firebase.database() 

    var ref = database.ref('Scores') ; 

    var data = {"Name" :"Natesh" , "Age" : 27} ; 

    ref.push(data) ; 

}ここで

は、データベース内の私のデータである: -

enter image description here

私のプロジェクト名は '-通知を座る' です、私もすべて受け入れるようにデータベースルールを設定していますリクエスト。

EDIT1: - firebaseオブジェクト自体が何らかの理由で初期化されていないことが判明しました。そのため、databaseオブジェクトは作成されないため、ref。

は、ここで上記のJavaスクリプトコードを呼び出す私のindex.htmlコードである: -

<body class="center"> 

     <!-- Add your site or application content here --> 


     <h1 class="mainheading">Notification Generator</h1> 


     <script src="https://www.gstatic.com/firebasejs/4.5.0/firebase.js"></script> 

     <script src="https://www.gstatic.com/firebasejs/4.5.0/firebase-app.js"></script> 
     <script src="https://www.gstatic.com/firebasejs/4.5.0/firebase-database.js"></script> 


     <script src="js/vendor/modernizr-3.5.0.min.js"></script> 
     <script src="https://code.jquery.com/jquery-3.2.1.min.js" integrity="sha256-hwg4gsxgFZhOsEEamdOYGBf13FyQuiTwlAQgxVSNgt4=" crossorigin="anonymous"></script> 
     <script>window.jQuery || document.write('<script src="js/vendor/jquery-3.2.1.min.js"><\/script>')</script> 
     <script type="text/javascript" src="js/plugins.js"></script> 
     <script type="text/javascript" src="js/main.js"></script> 

     <!-- Google Analytics: change UA-XXXXX-Y to be your site's ID. --> 
     <script> 
      window.ga=function(){ga.q.push(arguments)};ga.q=[];ga.l=+new Date; 
      ga('create','UA-XXXXX-Y','auto');ga('send','pageview') 
     </script> 
     <script src="https://www.google-analytics.com/analytics.js" async defer></script> 
    </body> 
</html> 
+0

- :ここで

は、固定されたコードです。それを呼び出す際にエラーが発生しますか? 'firebase.database()'は何を返しますか? – user2520818

答えて

0

問題は、私はindex.htmlファイル内main.jsスクリプトと呼ばれるためにあったようです。私はそれを固定した後、それは魅力のように動作します。 「私は、refのメソッドを呼び出すしようとすると、利用可能な参照方法がありません」

<body class="center"> 

     <!-- Add your site or application content here --> 

     <script src="https://www.gstatic.com/firebasejs/4.5.0/firebase-app.js"></script> 
     <script src="https://www.gstatic.com/firebasejs/4.5.0/firebase-auth.js"></script> 
     <script src="https://www.gstatic.com/firebasejs/4.5.0/firebase-database.js"></script> 
     <script src="https://www.gstatic.com/firebasejs/4.5.0/firebase-firestore.js"></script> 
     <script src="https://www.gstatic.com/firebasejs/4.5.0/firebase-messaging.js"></script> 



     <script src="https://www.gstatic.com/firebasejs/4.5.0/firebase.js"></script> 
     <script type="text/javascript" src="js/main.js"></script> 



     <script src="js/vendor/modernizr-3.5.0.min.js"></script> 
     <script src="https://code.jquery.com/jquery-3.2.1.min.js" integrity="sha256-hwg4gsxgFZhOsEEamdOYGBf13FyQuiTwlAQgxVSNgt4=" crossorigin="anonymous"></script> 
     <script>window.jQuery || document.write('<script src="js/vendor/jquery-3.2.1.min.js"><\/script>')</script> 
     <script type="text/javascript" src="js/plugins.js"></script> 

     <!-- Google Analytics: change UA-XXXXX-Y to be your site's ID. --> 
     <script> 
      window.ga=function(){ga.q.push(arguments)};ga.q=[];ga.l=+new Date; 
      ga('create','UA-XXXXX-Y','auto');ga('send','pageview') 
     </script> 
     <script src="https://www.google-analytics.com/analytics.js" async defer></script> 
    </body> 
関連する問題