ReactReact Native

React Native: วิธีแก้ error ‘getCurrentUserAsync’ of undefined ในการ debug แอพด้วย VSCode

เรื่องที่เกี่ยวข้อง - , , , ,

ในการทำแอพด้วย React Native แน่นอนว่าเราอาจจะทำ TDD แล้ว แต่ถ้าเกิดเราต้องการ debug ตัวโค้ดของโปรเจคเราด้วย VSCode ได้ ก็คงจะดีไม่น้อยใช่ไหม

โค้ชพลก็คิดเหมือนกันครับ บางทีของมันต้องใช้ 😀

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

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

สอบถาม หรือติดต่อจัดอบรมโทร 083-071-3373

อาการ Error: ‘getCurrentUserAsync’ of undefined

แต่ถ้าเราทำตามวิธีที่พลแชร์ไว้ก่อนหน้านี้ ในการติดตั้งระบบ Debug React Native ใน VSCode

แล้วเจอ Error ตอนพยายามรันตัว Debugger ขึ้นมาทำงานใน Tab ชื่อ Debug Console ของ VSCode ตามข้างล่าง

Adapter node: v10.2.0 x64
vscode-chrome-debug-core: 6.7.46
Could not debug. Cannot read property 'getCurrentUserAsync' of undefined

ทำให้รันยังไงก็ไม่เข้า Debugger ได้แต่นั่งจ้องตากับแอพ Expo เงียบๆ

มาดูวิธีแก้ไขกันครับ

สาเหตุมาจาก Bug ของ module ที่ชื่อ @expo/xdl นั่นเอง มีคนเจอปัญหานี้ครั้งแรกเมื่อ 21 กรกฎาคมที่ผ่านมา และมีวิธีแก้ไขเบื้องต้น ก่อน Expo จะปล่อย Patch มาแล้วครับ

1. เข้าไปที่โฟลเดอร์ Extension ของ React Native Tools

ใช้คำสั่ง cd เข้าไปที่โฟลเดอร์เก็บ extension ของ VSCode

cd YOUR_HOME_DIRECTORY/.vscode/extensions/

เช่นของพล อยู่บน Mac ก็ให้เปิด Finder และใช้ปุ่มลัด Ctrl + Shift + G และวางคำสั่งด้านล่างลงไป

~/.vscode/extensions

จากนั้นกด Enter

เราจะเข้ามาในโฟลเดอร์ที่ใช้เก็บ Extension ต่างๆ ของ VSCode ให้เรามองหา

msjsdiag.vscode-react-native-X.X.X

จากนั้นให้เปิด Terminal ขึ้นมาที่โฟลเดอร์นี้ล่ะครับ

2. ถอนการติดตั้ง และติดตั้ง module @expo/xdl ใหม่

พอเราเปิด Terminal ขึ้นมาในโฟลเดอร์นี้แล้ว เราต้องรัน 2 คำสั่ง

npm uni --no-save @expo/xdl

npm i --no-save @expo/xdl@56.0.0

3. ปิดการทำงานทั้งหมด และเปิดใช้งานใหม่

ในที่นี้ถ้าเราเปิดระบบต่อไปนี้ไว้ให้ไล่ปิดให้เรียบร้อย

  1. ระบบ Expo
  2. iOS Simulator หรือ Android Emulator
  3. React Native Debugger
  4. VSCode

จากนั้นค่อยไล่เปิดการทำงานทีละตัวใหม่

4. ทดสอบรันโปรเจค และ debugger

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

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

สอบถาม หรือติดต่อจัดอบรมโทร 083-071-3373

Loading Facebook Comments ...

Leave a Reply

Your email address will not be published. Required fields are marked *

Fill out this field
Fill out this field
Please enter a valid email address.

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Menu