React Native

React Native: โค้ดที่ต้องเปลียนใน react-navigation 4.x

เรื่องที่เกี่ยวข้อง - Can update, createStackNavigator, React Native, React navigation

ไม่นานมานี้ทางทีมพัฒนา React-navigation ได้ทำการอัพเดต Node package ขอตัวเองเป็นเวอร์ชั่น 4.x ครับ

มีความยืดหยุ่นมากขึ้น แต่ก็มีการเปลี่ยนแปลงโครงสร้างของ Package เหมือนกัน ทำให้เราอาจจะต้องมา recode กันอีกรอบ

พอดีโค้ชพลเจอมาส่วนหนึ่ง ขอเอามาแชร์ไว้ในนี้

แยก Navigator ไปไว้ใน package ของตัวเอง

ยกตัวอย่างเช่น createStackNavigator ที่ปกติเราสามารถนำมาใช้จาก react-navigation ตรงๆ ได้แบบด้านล่าง

import { createStackNavigator } from 'react-navigation';

ก็มีการแยกไปที่ react-navigation-stack แทน

import { createStackNavigator } from 'react-navigation-stack';

ดังนั้นถ้าใช้ react-navigation 1.4+ แล้วต้องเปลี่ยนหน่อยนะครับ

วิธีแก้ Error: react-navigation-stack does not exist in haste module map

ซึ่งหลังจากการติดตั้ง react-navigation-stack ในโปรเจค React Native ที่ใช้ Expo ทำให้เกิด Error ดังด้านล่าง

Error: react-navigation-stack does not exist in haste module map

ให้แก้โดยรันคำสั่งด้านล่าง แล้วค่อยเริ่มใช้งาน expo start ใหม่ครับ (อ้างอิง)

expo r -c

วิธีแก้ Warning: Accessing view manager configs directly off UIManager via UIManager[‘getConstants’] is no longer supported.

แล้วสำหรับใครที่ปรับแล้ว ขึ้น warning ด้านล่างนี้ ใน Expo

Accessing view manager configs directly off UIManager via UIManager['getConstants'] is no longer supported. Use UIManager.getViewManagerConfig('getConstants') instead.

สามารถแก้ไขได้ดังนี้ครับ (อ้างอิง)

// อัพเกด expo กันก่อน
$ npm install -g expo@latest

// ลบ node_modules และ package-lock.json เพื่อความชัวร์
$ rm -rf node_modules package-lock.json

// เช็คดูว่า เรามี `react-native-gesture-handler` อยู่ไหม ถ้ามีก็ลบออก
$ cat package.json | grep react-native-gesture-handler

// ใช้ expo ติดตั้ง เวอร์ชั่นที่เหมาะสม (expo จะเซ็ตค่าไว้อยู่แล้ว
$ expo install react-native-gesture-handler

// เริ่มรันโปรเจคด้วย Expo แบบไม่โหลด cache เก่ามาใช้งาน 
$ expo start --clear

สนใจเริ่มต้นเรียนรู้ React + Redux เข้าใจง่าย ดูด้านล่างเลย

เปิดอบรม React Native สำหรับผู้เริ่มต้น

ปูพื้นฐาน React และ React Native เข้าใจง่าย, ใช้ได้จริง, เนื้อหาใช้ในการทำแอพ Enterprise ขององค์กรได้

เริ่มต้นยุค AI ด้วยคอร์สฟรี และพรีเมี่ยม กับพล

หากชอบสิ่งที่พลเล่า เรื่องที่พลสอน สามารถสนับสนุนพลโดยการเข้าเรียนคอร์สออนไลน์ของพลนะคร้าบ

  • เข้าใจง่าย ใช้ได้จริง ออกแบบการสอนอย่างเข้าใจโดยโค้ชพล
  • มีคอร์สสำหรับคนใช้งานทั่วไป จนถึงเรียนรู้เพื่อใช้งานในสายอาชีพขั้นสูง
  • ทุกคอร์สมีใบประกาศณียบัตรรับรองหลังเรียนจบ

เราใช้คุกกี้เพื่อพัฒนาประสิทธิภาพ และประสบการณ์ที่ดีในการใช้เว็บไซต์ของคุณ คุณสามารถศึกษารายละเอียดได้ที่ นโยบายความเป็นส่วนตัว และสามารถจัดการความเป็นส่วนตัวเองได้ของคุณได้เองโดยคลิกที่ ตั้งค่า

Privacy Preferences

คุณสามารถเลือกการตั้งค่าคุกกี้โดยเปิด/ปิด คุกกี้ในแต่ละประเภทได้ตามความต้องการ ยกเว้น คุกกี้ที่จำเป็น

Allow All
Manage Consent Preferences
  • Always Active

Save