ドキュメントの取得
import { collection, query, getDocs } from "firebase/firestore";
import { db } from "../firebaseSettings/firebase";
const fetchTodo = async () => {
const todo = query(collection(db, "goods"));
const querySnapshot = await getDocs(todo);
let todos = [];
querySnapshot.forEach((doc) => {
todos.push({
id: doc.id,
content: doc.data().goodsTitle,
});
});
console.log(todos);
};
fetchTodo();
ドキュメントの取得(where)
import { collection, query, getDocs } from "firebase/firestore";
import { db } from "../firebaseSettings/firebase";
const fetchTodo = async () => {
query(collection(db, 'todo'), where('uid', '==', uid)); //フィールドのuidが現在のuidと同じ物を取得
const querySnapshot = await getDocs(todo);
let todos = [];
querySnapshot.forEach((doc) => {
todos.push({
id: doc.id,
content: doc.data().goodsTitle,
});
});
console.log(todos);
};
fetchTodo();
サインイン
import { getAuth, GoogleAuthProvider, signInWithPopup, onAuthStateChanged } from "firebase/auth";
const provider = new GoogleAuthProvider();
export const auth = getAuth();
export const singInWithGoogle = () => {
signInWithPopup(auth, provider)
.then((result) => {
const credential = GoogleAuthProvider.credentialFromResult(result);
const user = result.user;
}).catch((error) => {
console.log(error);
});
}
// uidの取得
onAuthStateChanged(auth, (user) => {
if (user) {
const uid = user.uid;
return uid;
}
});
サインアウト
export const logOut = () => {
const auth = getAuth();
signOut(auth).then((res) => {
console.log(res.user);
document.location.reload();
}).catch((error) => {
console.log(error.message);
});
}