JavaScriptを使用してFirebaseと統合されたサインインフォームをhttps://gist.github.com/deltaepsilon/3b79aac7563cd8e55fa277913bede265から作成しようとしています。JavaScript Firebaseログイン統合:未取得ReferenceError:signInが定義されていません
しかし、ブラケットでhtmlファイルを読み込み、ログインボタンをクリックするとUncaught ReferenceErrorが表示されます。
<div id="container">
<form id="app">
<div class="line">
<label for="password">Email</label>
<input id="email" type="text" placeholder="Your email" class="focus"/>
</div>
<div class="line">
<label for="password">Password</label>
<input id="password" type="password" placeholder="Enter your password" class="focus"/>
</div>
<div class="line submit">
<a class="button" id="login" onClick="signIn"> Log In </a>
</div>
</form>
</div>
とJavaScript一部:
<script type="text/javascript">
(function() {
var app = document.querySelector('#app');
app.signIn = function() {
var email = app.email;
var password = app.password;
if(!email || !password) {
return console.log('email and password required');
}
// Signs in user.
firebase.auth().signInWithEmailAndPassword(email, password)
.catch(function(error) {
// Handles errors.
var errorCode = error.code;
var errorMsg = error.message;
console.log('sign in error', error);
});
};
})();
</script>
問題は何ですか? querySelectorは、そのIDの権利として 'app'で何かを探しますか?だからonClick = "signIn"、それは 'app'にあるので、 "signIn" onclickを呼び出すことができるはずですか?
ご迷惑をおかけして申し訳ありません。ウェブデベロッパーにとって本当に新しいです。
などfirebase.authのような他の方法、(について)onAuthStateChanged、どのようにそれをイベントリスナーを使用して書き換えることでしょうか。? – SlackOverflow
これはFirebaseライブラリによって提供されるメソッドです。 'addEventListener'を使ってDOMイベントだけを聞くことができます。 – Saravana