Thuta Learning
ရှာဖွေရန်
IntermediateDevOps & Toolsintermediate

Data ထည့်ခြင်း (Set)

စိတ်လျှော့ပါ။ ဒီခန်းကို စာအုပ်လိုမဟုတ်ဘဲ စကားပြောသလိုပဲ၊ နားလည်လွယ်အောင် ရှင်းပါမယ်။

Data ထည့်ခြင်း (Set)

setDoc ကိုသုံးရင် document ID ကို ကိုယ်တိုင်သတ်မှတ်ပြီး data သိမ်းနိုင်ပါတယ်။ User profile လို ID ကိုသေချာသတ်မှတ်ချင်တဲ့ data များအတွက် အသုံးဝင်ပါတယ်။

Code Example

javascript
import { getFirestore, doc, setDoc } from 'firebase/firestore';
import { getAuth } from 'firebase/auth';

const db = getFirestore();
const auth = getAuth();

async function saveProfile() {
  const user = auth.currentUser;
  if (!user) return;

  await setDoc(doc(db, 'users', user.uid), {
    name: 'Sai',
    email: user.email,
    role: 'student'
  });

  console.log('Profile saved');
}

ဒီ code က ဘာလုပ်တာလဲ?

doc(db, 'users', user.uid) က users collection ထဲမှာ login user ရဲ့ UID ကို document ID အနေနဲ့သုံးပါတယ်။ ဒီလိုသိမ်းရင် user တစ်ယောက် = profile document တစ်ခု ဆိုပြီးရှင်းပါတယ်။

Common mistake

setDoc က default အနေနဲ့ document တစ်ခုလုံးကို အစားထိုးနိုင်ပါတယ်။ ရှိပြီးသား field တွေမပျောက်ချင်ရင် { merge: true } သုံးပါ။

javascript
await setDoc(doc(db, 'users', user.uid), {
  lastLoginAt: new Date()
}, { merge: true });
Data ထည့်ခြင်း (Set) | Thuta Learning