suh75321
2023. 11. 29. 21:42
module 안에서는
$(document).ready(function () {
});
이게 없어도 된다고 한다. 그러니 저걸 쓰고있다면 안의 내용물은 밖으로 빼고 저건 지워버려도 된다.
그리고 앞서 내가 만들어 놓은 회원정보 등록 페이지가 있는데,
<div class="bigbox">
<div class="mypostingbox" id="postingbox">
<div class="row g-2">
<div class="col-md">
<div class="form-floating">
<input type="email" class="form-control" id="name" placeholder="이름" value="">
<label for="floatingInputGrid">이름</label>
</div>
</div>
<div class="col-md">
<div class="row g-2">
<div class="col-md">
<div class="form-floating">
<input type="email" class="form-control" id="mbti" placeholder="MBTI"
value="">
<label for="floatingInputGrid">MBTI</label>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="form-floating mb-3">
<input type="email" class="form-control" id="advantage" placeholder="장점">
<label for="floatingInput">장점</label>
</div>
<div class="form-floating mb-3">
<input type="email" class="form-control" id="introduction" placeholder="소개">
<label for="floatingInput">소개</label>
</div>
<div class="form-floating mb-3">
<input type="email" class="form-control" id="goal" placeholder="목표">
<label for="floatingInput">목표</label>
</div>
<div class="form-floating mb-3">
<input type="email" class="form-control" id="promise" placeholder="약속">
<label for="floatingInput">약속</label>
</div>
<div class="form-floating mb-3">
<input type="email" class="form-control" id="git" placeholder="Git">
<label for="floatingInput">Git</label>
</div>
<div class="form-floating mb-3">
<input type="email" class="form-control" id="pw" placeholder="PW">
<label for="floatingInput">PW</label>
</div>
<div class="mybtn">
<button id="postingbtn" type="button" class="btn btn-primary">등록</button>
<button type="button" class="btn btn-outline-primary">닫기</button>
</div>
</div>
내용물은 이렇다. 그럼 이제 등록 버튼을 눌렀을떄 그게 서버에 저장되게 하려면
$("#postingbtn").click(async function () {
let name = $("#name").val();
let mbti = $("#mbti").val();
let advantage = $("#advantage").val();
let introduction = $("#introduction").val();
let goal = $("#goal").val();
let promise = $("#promise").val();
let git = $("#git").val();
let pw = $("#pw").val();
let doc = {
name: name,
mbti: mbti,
advantage: advantage,
introduction: introduction,
goal: goal,
promise: promise,
git: git,
pw: pw
};
await addDoc(collection(db, "database"), doc);
alert("등록완료");
});
이렇게 내가 만들어둔 칸의 id를 가져와서
let id = $("#id").val이걸 보든 칸마다 반복하고
밑에 let doc = {안에도 id:id를 반복하고, 애드혹 안에 데이터베이스 이름을 넣고싶은걸로 넣으면 이제 등록을 누르면 그게 데이터베이스에 저장된다.
마지막으로 alert로 등록을 눌렀을때 메시지를 띄어 저장됬음을 보여준다.
닫기버튼 누르면 닫히게 하려면,
<button id="close" type="button" class="btn btn-outline-primary">닫기</button>
이렇게 아이디를 부여하고
$("#close").click(async function (){
window.close();
});
이제 닫기 누르면 닫힌다.
그리고 데이터를 서버에서 가져오려면,
let docs = await getDocs(collection(db, "콜렉션이름"));
docs.forEach((doc) => {
let row = doc.data();
console.log(row);
});
이걸 이용해야 한다고 한다.
let name = $("#name").val();이걸 let name = row ['name'];
이런식으로 반복해야 한다고 한다.
아마 이걸 이용하면 데이터를 가져와서 카드를 만들수 있지 않을까?
그런데 다행히 그 부분은 다른 조원이 하기로 해서 한시름 놓게 되었다.
그래서 자시 공부를 시작했는데, 이번엔 git랑 리눅스를 배웠는데, 비주얼 스튜디오에서 터미널에 들어간 뒤 bash를 선택하면 되는데, 배운 여러게의 명령어 중 cd가 다른 파일로 이동하는 명령어라고 했는데, 하위파일로만 이동 가능하고 무슨 수를 써도 상위파일로 이동이 되지 않는다. 버그인가?
웃긴건, 다른건 다 된다! 왜지?