แก้ Error “Cannot use JSX unless the ‘–jsx’ flag is provided”


Cannot use JSX unless the '--jsx' flag is provided.

🔥 สาเหตุ

TypeScript ไม่รู้จัก JSX
เพราะ tsconfig.json ตั้งค่าไม่ถูก หรือไฟล์ไม่ใช่ .tsx

✅ วิธีแก้ (ทำแค่นี้ หาย 100%)

1.เช็กชื่อไฟล์

ต้องเป็น

App.tsx

❌ ไม่ใช่ App.ts

2.แก้ tsconfig.json

เปิด tsconfig.json แล้วแก้ / เพิ่มส่วนนี้

{
  "compilerOptions": {
    "jsx": "react-native",
    "allowJs": true,
    "strict": false,
    "noEmit": true
  }
}

📌 ถ้าไม่มีไฟล์นี้ ให้สร้างใหม่ได้เลย

3.รีสตาร์ท Metro (สำคัญมาก)

npx react-native start --reset-cache

แล้วรันใหม่

npx react-native run-android