2 글 보임 - 1 에서 2 까지 (총 2 중에서)
-
글쓴이글
-
2023년 6월 30일 10:14 #88860
황철민참가자게시판 작성하고 올리면 콘솔창에 이런 오류가 나옵니다.
prebuilt.js:184 Uncaught (in promise) FirebaseError: Function addDoc() called with invalid data. Unsupported field value: undefined (found in field uid in document product/0Ea3QneC8oq3SgI9K1L4) at new qr (prebuilt.js:184:9) at Ey (prebuilt.js:16125:16) at Hp.Bc (prebuilt.js:15728:16) at prebuilt.js:16042:17 at py (prebuilt.js:16000:12) at prebuilt.js:16059:19 at ii (prebuilt.js:621:70) at yy (prebuilt.js:16058:63) at Wp (prebuilt.js:15771:15) at nm.add (prebuilt.js:18000:28)
--------------------------------------------------------------
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> <link rel="stylesheet" href="main.css"> <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css"> </head>
<nav class="navbar navbar-expand-lg bg-body-tertiary"> <div class="container-fluid"> 당근 <span class="ms-auto mx-2" id="userName">Name</span> <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation"> <span class="navbar-toggler-icon"></span> </button> <div class="collapse navbar-collapse" id="navbarSupportedContent"> <ul class="navbar-nav me-auto mb-2 mb-lg-0"> <li class="nav-item"> Home <li class="nav-item"> Link <li class="nav-item dropdown"> Dropdown <ul class="dropdown-menu">
- Action
- Another action
- <hr class="dropdown-divider">
- Something else here
<li class="nav-item"> Disabled <form class="d-flex" role="search"> <input class="form-control me-2" type="search" placeholder="Search" aria-label="Search"> <button class="btn btn-outline-success" type="submit">Search</button> </form> </div> </div> </nav><div class="container mt-3"> <input type="text" class="form-control mt-2" id="title" placeholder="title"> <textarea class="form-control mt-2" id="content">content</textarea> <!-- <input type="text" class="form-control mt-2" id="price" placeholder="price"> --> <input class="form-control mt-2" type="file" id="image"> <button class="btn btn-danger mt-3" id="send">올리기</button> </div>
<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>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.min.js"></script> <script src="https://code.jquery.com/jquery-3.7.0.min.js" integrity="sha256-2Pmvv0kuTBOenSvLm6bvfBSSHrUJ+3A7x6P5Ebd07/g=" crossorigin="anonymous"></script>
<script >
const firebaseConfig = { apiKey: "AIzaSyBaPocafLkaD6G-OlMHkO64YDmAbgYsW5A", authDomain: "homepage-9978e.firebaseapp.com", projectId: "homepage-9978e", storageBucket: "homepage-9978e.appspot.com", messagingSenderId: "237249758140", appId: "1:237249758140:web:5edb2687779d50ffb361b9", measurementId: "G-26XL67DWXG" };
firebase.initializeApp(firebaseConfig); </script> <script> const db = firebase.firestore(); const storage = firebase.storage(); $('#send').click(function(){ //이미지 저장 var file = document.querySelector('#image').files[0]; //폴더 지정 이미지 저장 선언 var storageRef = storage.ref(); var 저장할경로 = storageRef.child('image/'+file.name); //저장하는 기능 var 업로드작업 = 저장할경로.put(file); // var 업로드작업 = 저장할경로.put(지정한 js로 파일 넣으면됨);
업로드작업.on( 'state_changed', // 변화시 동작하는 함수 null, //에러시 동작하는 함수 (error) => { console.error('실패사유는', error); }, // 성공시 동작하는 함수 () => { 업로드작업.snapshot.ref.getDownloadURL().then((url) => { console.log('업로드된 경로는', url);
var 저장할거 = { 제목 : $('#title').val(), // 가격 : $('#price').val(), 내용 : $('#content').val(), 날짜 : new Date(), 이미지 : url, uid : localStorage.getItem('user').uid, 이름 : localStorage.getItem('user').displayName, }
db.collection('product').add(저장할거).then((result)=>{ console.log(result); window.location.href = "/index.html"; }).catch((err)=>{ console.log(err); }) //.than(성공 했을때).catch(실패 했을때) 에러 체크 }); } ); })
var 뺀거 = localStorage.getItem('user'); if(localStorage.getItem('user') != null){
$('#userName').html(JSON.parse(뺀거).displayName);
}
firebase.auth().onAuthStateChanged((user)=>{ if (user) { console.log(user.uid); console.log(user.displayName); localStorage.setItem('user', JSON.stringify(user)); } })//이름 뜨는 기능
</script>
</body> </html>
2023년 6월 30일 16:06 #88951
codingapple키 마스터제목 : $('#title').val(),
// 가격 : $('#price').val(),
내용 : $('#content').val(),
날짜 : new Date(),
이미지 : url,
uid : localStorage.getItem('user').uid,
이름 : localStorage.getItem('user').displayName, 이거중에 undefined가 있다는거같은데 전부 출력해보거나 undefined면 저장하지말라고 if문같은거 씁시다
-
글쓴이글
2 글 보임 - 1 에서 2 까지 (총 2 중에서)
- 답변은 로그인 후 가능합니다.