Expo суулгах ба тохиргоо
Expo бол React Native хөгжүүлэлтийг асар хялбар болгодог хэрэгсэл. Expo ашиглан Android Studio эсвэл Xcode суулгахгүйгээр утсан дээрээ аппаа шууд харж болно. Энэ курсд бид Expo ашиглана.
Expo CLI суулгах
Терминал нээгээд доорх командыг ажиллуулна:
npm install -g expo-cli
-g гэдэг нь "global" — системд нэг удаа суулгаж бүх проектод ашиглах боломжтой болно гэсэн үг.
Суулгалт дууссаны дараа шалгана:
expo --version
Хувилбарын дугаар гарч ирвэл амжилттай.
Шинэ Expo апп үүсгэх
Проектуудаа хадгалах хавтасруу орно (жишээ нь Documents эсвэл Projects), дараа нь:
npx create-expo-app my-first-app
cd my-first-app
npx бол npm дагалдах хэрэгсэл бөгөөд тусдаа суулгахгүйгээр шууд ажиллуулах боломж олгодог. create-expo-app нь шинэ Expo проектийн бүтцийг автоматаар үүсгэнэ.
Үүсгэсний дараа хавтасны бүтэц иймэрхүү харагдана:
my-first-app/
├── app/
│ ├── (tabs)/
│ │ ├── index.tsx
│ │ └── explore.tsx
│ └── _layout.tsx
├── assets/
├── components/
├── package.json
└── app.json
Expo Go апп суулгах
Утасны App Store (iPhone) эсвэл Play Store (Android) дээрээс Expo Go аппыг татаж суулгана. Энэ апп нь таны компьютер дээрх кодыг утасны дэлгэц дээр харуулах гүүр болдог.
Компьютер болон утас нэг WiFi сүлжээнд холбогдсон байх шаардлагатай.
Аппыг ажиллуулах
Терминалд проектийн хавтас дотор байгаа эсэхийг шалгаад:
npx expo start
Терминалд QR код гарч ирнэ. Утасныхаа Expo Go аппыг нээгээд QR кодыг уншуулбал апп шууд дэлгэц дээр харагдана.
Metro waiting on exp://192.168.x.x:8081
› Scan the QR code above with Expo Go (Android) or the Camera app (iOS)
iPhone хэрэглэгчид камер аппаараа QR кодыг уншуулж болно — Expo Go автоматаар нээгдэнэ.
Алдаа гарвал яах вэ?
"Network response timed out" — Компьютер болон утас нэг WiFi-д холбогдсон эсэхийг шалгана.
QR код уншихгүй байвал — Expo Go аппыг нээгээд "Enter URL manually" сонголтоор гараар хаягийг оруулж болно.
Дараагийн хичээлд:
Expo Go утсан дээр ажиллаж байна. Дараагийн хичээлд Android эмулятор эсвэл iOS симулятор тохируулна — утасгүйгээр компьютер дээрээ апп ажиллуулах боломж олгодог.