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>
그리고 자바 스크립트 부분 :
<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을 호출 할 수 있어야합니까?
불편을 끼쳐 드려 죄송합니다. 저는 web-dev에 처음으로 익숙합니다.
을 다른 방법의 경우() onAuthStateChanged, 어떻게가의 EventListener를 사용하여 다시 작성 될 것이다.? – SlackOverflow
이것들은 Firebase 라이브러리가 제공하는 메소드입니다. 'addEventListener'를 사용하면 DOM 이벤트 만들을 수 있습니다. – Saravana