Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- 기초
- 파이어베이스로그인
- Spread
- JS
- 커스텀알락
- yarn-berry
- leetcode189
- youtube iframe
- 리액트
- Python
- iP
- css
- react-firebaseui
- 커스텀알림
- TCPvsUDP
- 다리놓기
- Next.js
- firebaseui
- react-native
- 백준
- 파이썬
- 자바스크립트
- 구조분해할당
- nvmrc
- React
- nvm
- 프로토타입
- mac
- leetcode977
- Rest
Archives
- Today
- Total
JadeCode
[혼프] 혼자하는 프로젝트 2. firebase store 본문
이제 로그인을 했으니 초기 정보를 저장해야지~~
나에게 필요한 기본 정보는 간단하다.
유저 별 초기화 날짜와 월 식비!
일단 파이어베이스에 Firestore Database를 추가한다.
그 후에 작업 시작
일단 컬렉션은 users로 두고 문서의 ID는 유저의 uid를 사용해서 정보를 저장한다.
import React, { useState } from "react";
import { doc, getDoc, setDoc } from "firebase/firestore";
import { firestore,fireAuth } from "firebase/clientApp";
interface InputForm {//input
initialDate: number;
budget: number;
}
const Register = ()=>{
const uid = fireAuth.currentUser!.uid; //무조건 로그인 한 후에 이 코드가 실행 될 것이니
const [form, setForm] = useState<InputForm>({
initialDate: 0,
budget: 0,
});
const handleChange = (e: React.ChangeEvent<HTMLInputElement>)=>{
const { name, value } = e.target;
setForm({ ...form, [name]: value });
}
const handleSubmit = async () => {
await setDoc(doc(firestore, "users", uid), {
initialDate, // 초기날짜
budget, //예산
}).then((res) => console.log("res"));
};
return(
<>
<input name="initialDate" value={initialDate} type="number" onChange={handleChange}/>
<input name="budget" value={budget} type="number" onChange={handleChange}/>
<button onClick={handleSubmit}> 저장하기 </button>
</>
)
}
//firebase/clientApp.ts
//파이어베이스 초기화
import firebase from "firebase/compat/app";
import "firebase/compat/auth";
import { getFirestore } from "firebase/firestore";
import "firebase/compat/auth";
import firebaseConfig from "firebaseConfig.json"; //개인정보
const app = firebase.initializeApp(firebaseConfig);
const firestore = getFirestore(app);
const fireAuth = firebase.auth();
export { firestore, fireAuth };
https://firebase.google.com/docs/firestore/manage-data/add-data?hl=ko
공식문서에 잘 나와있어서 쉽게 적용할 수 있었다.
유저 정보 뿐 아니라, 게시글 역시 firestore를 이용해서 저장 할 것이다.
'개발' 카테고리의 다른 글
모노레포(MonoRepo) (0) | 2023.04.27 |
---|---|
[혼프] 혼자하는 프로젝트 3. firebase storage (0) | 2023.03.31 |
[혼프] 혼자하는 프로젝트 1. firebase-auth 적용기 (0) | 2023.03.29 |
React-Query 도입에 대한 고민 (0) | 2023.03.16 |
[styled-components] 타입스크립트 적용, 다크모드 (0) | 2023.03.14 |
Comments