ไฟล์ Manifest ของเว็บแอปจะรวมอยู่ใน Create React App โดยค่าเริ่มต้นและอนุญาตให้ทุกคนติดตั้งแอปพลิเคชัน React บนอุปกรณ์ของตนเองได้
Create React App (CRA) จะมีไฟล์ Manifest ของเว็บแอปโดยค่าเริ่มต้น การแก้ไขไฟล์นี้จะช่วยให้คุณเปลี่ยนวิธีแสดงแอปพลิเคชันเมื่อติดตั้งบนอุปกรณ์ของผู้ใช้ได้
เหตุใดจึงมีประโยชน์
ไฟล์ Manifest ของเว็บแอปช่วยให้คุณเปลี่ยนลักษณะที่แอปพลิเคชันที่ติดตั้งไว้จะปรากฏบนเดสก์ท็อปหรืออุปกรณ์เคลื่อนที่ของผู้ใช้ได้ การแก้ไขพร็อพเพอร์ตี้ในไฟล์ JSON จะช่วยให้คุณแก้ไขรายละเอียดหลายอย่างในแอปพลิเคชันได้ ซึ่งรวมถึงรายละเอียดต่อไปนี้
- ชื่อ
- คำอธิบาย
- ไอคอนแอป
- สีธีม
เอกสารประกอบ MDN ครอบคลุมพร็อพเพอร์ตี้ทั้งหมดที่เปลี่ยนแปลงได้อย่างละเอียด
แก้ไขไฟล์ Manifest เริ่มต้น
ใน CRA ไฟล์ Manifest เริ่มต้นจะรวม /public/manifest.json
ไว้โดยอัตโนมัติเมื่อมีการสร้างแอปใหม่ ดังนี้
{
"short_name": "React App",
"name": "Create React App Sample",
"icons": [
{
"src": "favicon.ico",
"sizes": "64x64 32x32 24x24 16x16",
"type": "image/x-icon"
},
{
"src": "logo192.png",
"type": "image/png",
"sizes": "192x192"
},
{
"src": "logo512.png",
"type": "image/png",
"sizes": "512x512"
}
],
"start_url": ".",
"display": "standalone",
"theme_color": "#000000",
"background_color": "#ffffff"
}
วิธีนี้จะช่วยให้ทุกคนติดตั้งแอปพลิเคชันบนอุปกรณ์ของตนและเห็นรายละเอียดเริ่มต้นของแอปพลิเคชันได้ ไฟล์ HTML public/index.html
ยังมีองค์ประกอบ <link>
เพื่อโหลดไฟล์ Manifest ด้วย
<link rel="manifest" href="%PUBLIC_URL%/manifest.json" />
ต่อไปนี้คือตัวอย่างแอปพลิเคชันที่สร้างขึ้นด้วย CRA ซึ่งมีไฟล์ Manifest ที่แก้ไขแล้ว
หากต้องการดูว่าพร็อพเพอร์ตี้ทั้งหมดทำงานอย่างถูกต้องในตัวอย่างนี้หรือไม่ ให้ทำดังนี้
- หากต้องการดูตัวอย่างเว็บไซต์ ให้กดดูแอป แล้วกดเต็มหน้าจอ
- กดแป้น Control+Shift+J (หรือ Command+Option+J ใน Mac) เพื่อเปิดเครื่องมือสำหรับนักพัฒนาซอฟต์แวร์
- คลิกแท็บแอปพลิเคชัน
- ในแผงแอปพลิเคชัน ให้คลิกแท็บไฟล์ Manifest
บทสรุป
- หากคุณกำลังสร้างเว็บไซต์ที่คิดว่าไม่จำเป็นต้องติดตั้งในอุปกรณ์ ให้นำไฟล์ Manifest และองค์ประกอบ
<link>
ในไฟล์ HTML ที่ชี้ไปยังเว็บไซต์นั้นออก - หากต้องการให้ผู้ใช้ติดตั้งแอปพลิเคชันบนอุปกรณ์ ให้แก้ไขไฟล์ Manifest (หรือสร้างไฟล์ Manifest หากไม่ได้ใช้ CRA) ที่มีพร็อพเพอร์ตี้ที่ต้องการ เอกสารประกอบ MDN จะอธิบายแอตทริบิวต์ที่จำเป็นและที่ไม่บังคับทั้งหมด