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가 다른 파일로 이동하는 명령어라고 했는데, 하위파일로만 이동 가능하고 무슨 수를 써도 상위파일로 이동이 되지 않는다. 버그인가?

 

웃긴건, 다른건 다 된다! 왜지?