- ความเป็นสากลที่อ่านได้อัตโนมัติและปรับให้เหมาะสม (3 KB) สำหรับ JavaScript
เอกสาร · QuickStart · ตัวอย่าง · สนับสนุน · มีส่วนร่วม · ใบอนุญาต
การทำให้เป็นสากลคือการออกแบบและพัฒนาเนื้อหาผลิตภัณฑ์แอปพลิเคชันหรือเอกสารที่ช่วยให้การแปลเป็นภาษาท้องถิ่นง่ายขึ้นสำหรับผู้ชมเป้าหมายที่แตกต่างกันไปในวัฒนธรรมภูมิภาคหรือภาษา
--- W3C Web Internationalization FAQ
Lingui เป็นกรอบความเป็นสากล (I18N) ที่ง่าย แต่ทรงพลังสำหรับโครงการระดับโลก
ทำความสะอาดและอ่านได้ - รักษารหัสของคุณให้สะอาดและอ่านได้ในขณะที่ห้องสมุดใช้ MessageFormat ICU ที่ผ่านการทดสอบและทรงพลังภายใต้ประทุน
Universal - ใช้ทุกที่ @lingui/core ให้ฟังก์ชันการทำงานของ INTL ที่จำเป็นซึ่งทำงานในโครงการ JavaScript ใด ๆ ในขณะที่ @lingui/react เสนอส่วนประกอบเพื่อใช้ประโยชน์จากการแสดงปฏิกิริยาแบบตอบสนองรวมถึงการสนับสนุนส่วนประกอบเซิร์ฟเวอร์ React (RSC)
การสนับสนุนข้อความแบบเต็มรูปแบบ - ใช้ส่วนประกอบ React ภายในข้อความที่แปลโดยไม่มีข้อ จำกัด ใด ๆ การเขียนข้อความข้อความที่หลากหลายนั้นง่ายพอ ๆ กับการเขียน JSX
เครื่องมือที่ทรงพลัง - จัดการเวิร์กโฟลว์ INTL ของคุณด้วย Lingui CLI, ปลั๊กอิน VITE และปลั๊กอิน ESLINT CLI สกัดรวบรวมและตรวจสอบข้อความในขณะที่ปลั๊กอิน Vite รวบรวมแคตตาล็อกได้ทันทีและปลั๊กอิน ESLINT ช่วยจับข้อผิดพลาดในการใช้งานทั่วไป
Unpinionated - รวม Lingui เข้ากับเวิร์กโฟลว์ที่มีอยู่ของคุณ รองรับคีย์ข้อความรวมถึงข้อความที่สร้างขึ้นอัตโนมัติ การแปลจะถูกเก็บไว้ใน JSON หรือไฟล์ PO มาตรฐานซึ่งรองรับในเครื่องมือการแปลเกือบทั้งหมด
น้ำหนักเบาและปรับให้เหมาะสม - ห้องสมุดหลักน้อยกว่า 3 kb gzipped ส่วนประกอบปฏิกิริยาจะเพิ่มขึ้น 1.4 kb gzipped
ชุมชนที่ใช้งานอยู่ - เข้าร่วมชุมชนที่กำลังเติบโตของนักพัฒนาที่ใช้ Lingui เพื่อสร้างผลิตภัณฑ์ระดับโลก
เข้ากันได้กับ React-Intl -API React ระดับต่ำนั้นคล้ายกับ React-intl และรูปแบบข้อความเหมือนกัน เป็นเรื่องง่ายที่จะโยกย้ายโครงการที่มีอยู่
ตัวอย่างสั้น ๆ ว่า I18N มีลักษณะอย่างไรกับ JSX:
import { Trans } from "@lingui/react/macro"
function App ( ) {
return (
< Trans id = "msg.docs" /* id is optional */ >
Read the < a href = "https://lingui.dev" > documentation </ a >
for more info.
</ Trans >
)
}ข้อความจากส่วนประกอบนี้จะถูกแยกออกในรูปแบบต่อไปนี้:
msgid "msg.docs"
msgstr "Read the <0>documentation</0> for more info."ตัวอย่างเพิ่มเติมดูไดเรกทอรีตัวอย่าง
หากคุณมีปัญหาโปรดแจ้งให้เราทราบ
linguijsการมีส่วนร่วมในโครงการโอเพนซอร์ซคือทุกอย่างตั้งแต่การแพร่กระจายคำเขียนเอกสารเพื่อใช้คุณสมบัติและแก้ไขข้อบกพร่อง
โครงการนี้มีอยู่ขอบคุณทุกคนที่มีส่วนร่วม [มีส่วนช่วย].
โครงการได้รับใบอนุญาตภายใต้ใบอนุญาต MIT