
ลำดับการใช้ภาษาสำรองสำหรับทุกเฟรมเวิร์ก
เฟรมเวิร์ก i18n ส่วนใหญ่ข้ามภาษาหลักทั้งหมด ผู้ใช้ pt-BR ที่ไม่มีคีย์จึงเห็นอังกฤษ ไม่ใช่คำแปล pt-PT ที่ใช้ได้ดี ไลบรารี locale-chain แก้ปัญหาด้วยลำดับค่าสำรองแบบผสานเชิงลึกที่กำหนดค่าได้
ปัญหา : เฟรมเวิร์กข้ามภาษาหลัก
คุณมีคำแปล pt-PT 2,000 คีย์ ส่วนไฟล์ pt-BR มีการแทนค่าตามภูมิภาค 200 คีย์ แล้วอีก 1,800 คีย์ที่เหมือนกันเกิดอะไรขึ้น? เฟรมเวิร์กส่วนใหญ่แสดงภาษาสำรอง ซึ่งมักเป็นอังกฤษ แทนภาษาหลัก ผู้ใช้บราซิลจึงเห็นโปรตุเกสปนอังกฤษ ประสบการณ์ที่เสียหายและทำให้แอปดูไม่เสร็จ
นี่ไม่ใช่กรณีขอบ แอปทุกตัวที่มีรูปแบบตามภูมิภาค (zh-Hans/zh-Hant, es/es-419, en-US/en-GB, fr/fr-CA) เจอปัญหานี้ พฤติกรรมเริ่มต้นของแทบทุกเฟรมเวิร์ก i18n ผิดสำหรับภาษาตามภูมิภาค
ค่าสำรองแบบผสานเชิงลึกทำงานอย่างไร
เมื่อผู้ใช้เลือก pt-BR ไลบรารีจะโหลดข้อความจากทุกภาษาในลำดับแล้วผสานเชิงลึกตามความสำคัญ คีย์ภูมิภาคแทนคีย์หลัก ส่วนคีย์หลักเติมช่องว่าง ผลลัพธ์คือชุดข้อความครบถ้วนโดยไม่มีคำแปลหาย
ตัวอย่าง : pt-BR กำหนด 'cart.checkout' เป็น 'Finalizar compra' ส่วน pt-PT กำหนด 'cart.checkout' เป็น 'Concluir compra' และ 'cart.empty' เป็น 'Carrinho vazio' ผลลัพธ์ pt-BR ใช้ข้อความชำระเงินของ pt-BR แต่ถอยไปใช้ pt-PT กับข้อความตะกร้าว่าง แทนการแสดงอังกฤษ
พร้อมใช้งานสำหรับ 17 เฟรมเวิร์ก
แต่ละเฟรมเวิร์กมีไลบรารี locale-chain เฉพาะที่เชื่อมกับระบบ i18n โดยตรง ติดตั้งแพ็กเกจ กำหนดลำดับ แล้วการผสานเชิงลึกจะเกิดอัตโนมัติตอนโหลด
ลองใช้ i18n Agent ตอนนี้
ลากและวางไฟล์แปลของคุณที่นี่
JSON, YAML, PO, XML, CSV, Markdown, Properties
หรือคลิกเพื่อเลือกไฟล์
ภาษาเป้าหมาย