
function 키워드
**async** function 함수이름(){
**await** 비동기_처리할_함수 또는 값
}
화살표 함수
const 함수이름 = **async**() => {
**await** 비동기_처리할_함수 또는 값
}
const AsyncAwait = () => {
async function getName(){
let user = await fetch('mysite.com/users/1');
// 리턴 받은 결과의 user.name 출력
console.log(user.name);
}
// 함수 호출
getName();
return <div></div>;
};
export default AsyncAwait;
| Path | 데이터 수 |
|---|---|
| posts | 100 |
| comments | 500 |
| albums | 100 |
| photos | 5000 |
| todos | 200 |
| users | 10 |
[
{
"id": 1,
"name": "Leanne Graham",
"username": "Bret",
"email": "Sincere@april.biz",
"address": {
"street": "Kulas Light",
"suite": "Apt. 556",
"city": "Gwenborough",
"zipcode": "92998-3874",
"geo": {
"lat": "-37.3159",
"lng": "81.1496"
}
},
},
// 생략
import { initializeApp } from "firebase/app";
import { getFirestore } from "firebase/firestore";
const firebaseConfig = {
apiKey: process.env.REACT_APP_FIREBASE_API_KEY,
authDomain: process.env.REACT_APP_FIREBASE_AUTH_DOMAIN,
projectId: process.env.REACT_APP_FIREBASE_PROJECT_ID,
storageBucket: process.env.REACT_APP_FIREBASE_STORAGE_BUCKET,
messagingSenderId: process.env.REACT_APP_FIREBASE_MESSAGING_SENDER_ID,
appId: process.env.REACT_APP_FIREBASE_APP_ID,
measurementId: process.env.REACT_APP_FIREBASE_MEASUREMENT_ID,
};
// Firebase 초기화
const app = initializeApp(firebaseConfig);
// Firestore 객체 저장
export const db = getFirestore(app);
import React, { useEffect } from "react";
import { db } from "./firebase";
const App = () => {
useEffect(() => {
console.log(db);
});
return <div></div>;
};
export default App;
import { db } from "./firebase";
import { collection, getDocs} from "firebase/firestore";
const App = () => {
const fruitCollection = collection(db, "fruits");
useEffect(() => {
async function getFruits() {
const data = await getDocs(fruitCollection);
console.log(data);
};
getFruits();
}, []);
return <div></div>;
};
export default App;
import { db } from "./firebase";
import { collection, getDocs, getDoc, doc} from "firebase/firestore";
const App = () => {
const fruitCollection = collection(db, "fruits");
useEffect(() => {
async function getFruits() {
const docRef = doc(fruitCollection, "수박");
const data = await getDoc(docRef);
if (data.exists()) {
console.log("결과 : ", data.data());
} else {
console.log("결과 없음");
}
};
getFruits();
}, []);
return <div></div>;
};
export default App;
import { db } from "./firebase";
import { 생략, query, where} from "firebase/firestore";
const App = () => {
const fruitCollection = collection(db, "fruits");
useEffect(() => {
async function getFruits() {
const data = query(fruitCollection, where("season", "==", "가을"));
const querySnapshot = await getDocs(data);
querySnapshot.forEach((doc) => {
console.log(doc.id, " : ", doc.data());
});
}
getFruits();
}, []);
return <div></div>;
};
export default App;
import { db } from "./firebase";
import { 생략, query, where} from "firebase/firestore";
const App = () => {
const fruitCollection = collection(db, "fruits");
useEffect(() => {
async function getFruits() {
const data = query(fruitCollection, where("price", ">", 9000));
const querySnapshot = await getDocs(data);
querySnapshot.forEach((doc) => {
console.log(doc.id, " : ", doc.data());
});
}
getFruits();
}, []);
return <div></div>;
};
export default App;
import { db } from "./firebase";
import { 생략, setDoc } from "firebase/firestore";
const App = () => {
const fruitCollection = collection(db, "fruits");
async function setFruit() {
await setDoc(doc(fruitCollection, "바나나"), {
season: "봄",
color: "노랑",
taste: "달콤",
price: 3000,
});
}
return <div><button onClick={setFruit}>과일 추가</button></div>;
};
export default App;
import { db } from "./firebase";
import { 생략, setDoc} from "firebase/firestore";
const App = () => {
const fruitCollection = collection(db, "fruits");
async function updateFruit() {
await updateDoc(doc(fruitCollection, "바나나"), {
season: "봄",
color: "노랑",
taste: "달콤",
price: 5000,
});
}
return <div><button onClick={updateFruit}>과일 수정</button></div>;
};
export default App;
import { db } from "./firebase";
import { 생략, setDoc} from "firebase/firestore";
const App = () => {
const fruitCollection = collection(db, "fruits");
async function updateFruit() {
await updateDoc(doc(fruitCollection, "바나나"), {
season: "봄",
color: "노랑",
taste: "달콤",
price: 5000,
count: 10
});
}
return <div><button onClick={updateFruit}>과일 수정</button></div>;
};
export default App;
import { db } from "./firebase";
import { 생략, deleteDoc } from "firebase/firestore";
const App = () => {
const fruitCollection = collection(db, "fruits");
async function deleteFruit() {
await deleteDoc(doc(fruitRef, "메론"));
}
return <div><button onClick={updateFruit}>과일 삭제</button></div>;
};
export default App;
import { db } from "./firebase";
import { 생략, deleteField } from "firebase/firestore";
const App = () => {
const fruitCollection = collection(db, "fruits");
async function deleteFieldFruit() {
await updateDoc(doc(fruitRef, "바나나"), {
count: deleteField(),
});
}
return
<div>
<button onClick={deleteFieldFruit}>특정 필드 삭제</button>
</div>;
};
export default App;