-
글쓴이글
-
2022년 5월 17일 23:59 #34276
유용환참가자지금 로그인한 유저정보 알아내기 강의에서
그대로 코드를 했는데
VM1106:1 Uncaught SyntaxError: Unexpected token u in JSON at position 0 at JSON.parse (<anonymous>) at login.html?id=%EC%83%81%ED%92%881:98:34
이런 오류가 나오는데 왜 그런건가요.
98번째 줄은
$('#userName').html(JSON.parse(뺀거.displayName))
이겁니다.
2022년 5월 18일 13:41 #34320
유용환참가자저는 그냥 콘솔로 no data를 출력하도록했는데
위에서 유저이름이 없으면 하지말라고 할때에서 하지말라고 할때를 어떻게 코드를
짜야하나요.
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3" crossorigin="anonymous">
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-ka7Sk0Gln4gmtz2MlQnikT1wXgYsOg+OMhuP+IlRH9sENBO0LRn5q+8nbTov4+1p" crossorigin="anonymous"></script>
<link rel="stylesheet" href="main.css">
<title>Welcome to Firebase Hosting</title><script
src="https://code.jquery.com/jquery-3.6.0.min.js"
integrity="sha256-/xUj+3OJU5yExlq6GSYGSHk7tPXikynS7ogEvDej/m4="
crossorigin="anonymous"></script>
</head>
<body><script src="https://www.gstatic.com/firebasejs/8.6.5/firebase-app.js"></script>
<script src="https://www.gstatic.com/firebasejs/8.6.5/firebase-auth.js"></script>
<script src="https://www.gstatic.com/firebasejs/8.6.5/firebase-firestore.js"></script>
<script src="https://www.gstatic.com/firebasejs/8.6.5/firebase-storage.js"></script><nav class="navbar navbar-expand-lg navbar-light bg-light">
<div class="container-fluid">
<a class="navbar-brand" href="#">사과마켓</a>
<span id="userName"></span>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNav" aria-controls="navbarNav" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarNav">
<ul class="navbar-nav">
<li class="nav-item">
<a class="nav-link active" aria-current="page" href="#">Home</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Features</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Pricing</a>
</li>
<li class="nav-item">
<a class="nav-link disabled">Disabled</a>
</li>
</ul>
</div>
</div>
</nav><div class="container mt-3">
<div class="mb-3">
<input type="text" class="form-control" placeholder="name" id="name-new">
</div>
<div class="mb-3">
<input type="email" class="form-control" placeholder="email" id="email-new">
</div>
<div class="mb-3">
<input type="password" class="form-control" placeholder="pw" id="pw-new">
</div>
<button type="submit" class="btn btn-primary" id="register">가입하기</button>
</div><div class="container mt-3">
<div class="mb-3">
<input type="text" class="form-control" placeholder="name" id="name">
</div>
<div class="mb-3">
<input type="email" class="form-control" placeholder="email" id="email">
</div>
<div class="mb-3">
<input type="password" class="form-control" placeholder="pw" id="pw">
</div>
<button type="submit" class="btn btn-primary" id="login">로그인하기</button>
<button type="submit" class="btn btn-primary" id="logout">로그아웃하기</button>
</div>
<script>
const firebaseConfig = {
apiKey: "AIzaSyBvz6ps5fpCJ3wnaZCLvAshasvJMZDZdy8",
authDomain: "haha-e16b0.firebaseapp.com",
projectId: "haha-e16b0",
storageBucket: "haha-e16b0.appspot.com",
messagingSenderId: "1072073879277",
appId: "1:1072073879277:web:d38609a530576dd5a7e6e4"
};
firebase.initializeApp(firebaseConfig);
</script>
<script>
const db = firebase.firestore();
const storage = firebase.storage();var 뺀거 = localStorage.getItem('user');
$('#userName').html(JSON.parse(뺀거.displayName)) // json 해제
firebase.auth().onAuthStateChanged((user)=>{ // 유저의 로그인 상태 확인 , 느림 localstorage에 저장
if (user) {
console.log(user)
localStorage.setItem('user', JSON.stringify(user)) // localstorage 정보저장
}else{
console.log('no datas')
}
})$('#login').click(function(){
var 이메일 = $('#email').val();
var 패스워드 = $('#pw').val();firebase.auth().signInWithEmailAndPassword(이메일, 패스워드).then((result)=>{
console.log(result.user)
})
})
$('#logout').click(function(){
firebase.auth().signOut()
localStorage.removeItem('user')
})
$('#register').click(()=>{var 이메일 = $('#email-new').val();
var 패스워드 = $('#pw-new').val();
var 이름 = $('#name-new').val();firebase.auth().createUserWithEmailAndPassword(이메일, 패스워드).then((result)=>{
console.log(result)
console.log(result.user)
result.user.updateProfile( {displayName : 이름} ) // 이름 추가
})
})
</script>
</body>
</html>2022년 5월 18일 16:46 #34341
codingapple키 마스터if ( localStorage.getItem('user') == null) {
$('#userName').html(JSON.parse(뺀거.displayName))
}
이렇게하면 되지않을까요
-
글쓴이글
- 답변은 로그인 후 가능합니다.