الوثائق / Vue
Vue i18n، آليًا
انقل النسخ المكتوبة يدويًا في مكونات Vue ذات الملف الواحد، أو قوالب HTML أو Pug، إلى استدعاءات vue-i18n ، مع صيغ الجمع، والجمل حول الروابط عبر <i18n-t>، وإعداد vue-i18n.
كيف يعمل
نص القالب و {{ }} يتحول إلى {{ 'key' }}، والسمات تتحول إلى :placeholder="'key'"، والنصوص المعروضة من <script setup> (التنبيهات، الإشعارات، document.title) تستخدم t() من useI18n.
تستخدم الجمعات صيغة أنابيب vue-i18n مع قواعد الجمع لكل لغة، وتظل الجمل حول الروابط رسالة واحدة مع <i18n-t>.
القوالب المكتوبة بـ Pug (<template lang="pug">) تُترجم أيضًا: h1 {{ 'key' }}، النصوص الموجهة والمجمعة، input(:placeholder="'key'")، والجمل حول #[a(href) inline tags].
النسخ المحفوظة في <script setup> والمعروضة بواسطة القالب، مثل const tabs = [{ label: 'Overview' }] المكررة مع v-for، تصبح مفاتيح يقرأها القالب عبر tab.label.
قبل وبعد
المخرجات الحقيقية للمحرك لهذا الملف. في تشغيل حقيقي، يقوم النموذج المستضاف بتسمية المفاتيح من السياق.
<template>
<section>
<h2>Invite people to {{ team.name }}</h2>
<p>{{ seats }} {{ seats === 1 ? 'seat' : 'seats' }} left on your plan</p>
<input placeholder="name@company.com" />
<p>Read the <a href="/docs">docs</a> first.</p>
</section>
</template><template>
<section>
<h2>{{ $t('invite_team.invite_people_to', { name: team.name }) }}</h2>
<p>{{ $t('invite_team.seats_left_on_your_plan', { count: seats }, seats) }}</p>
<input placeholder="name@company.com" />
<p><i18n-t keypath="invite_team.read_the_first" scope="global"><template #a><a href="/docs">{{ $t('invite_team.docs') }}</a></template></i18n-t></p>
</section>
</template>{
"invite_team": {
"invite_people_to": "Invite people to {name}",
"seats_left_on_your_plan": "{count} seat left on your plan | {count} seats left on your plan",
"docs": "docs",
"read_the_first": "Read the {a} first."
}
}ما يضيفه الإعداد
الإعداد الأول يقوم بإعداد vue-i18n إذا لم يكن المشروع يحتوي عليه بعد:
vue-i18nفي package.jsonsrc/i18n.tsمع كل لغة وقواعد الجمع، مثبت معapp.use(i18n)فيmain.ts- يُترك إعداد
createI18nالحالي كما هو
قم بتشغيله
يتطلب CLI إصدار Node.js 22 أو أحدث.
npm install --save-dev localize-dev
npx localize-dev login
# Preview, then write the changes
npx localize-dev run --dry-run -l es,fr,de
npx localize-dev run -l es,fr,de
# Or open a pull request instead
npx localize-dev pr -l es,fr,deأو أضف إجراء GitHub واحصل على طلب سحب عند كل دفعة. جربه على الكود الخاص بك أولاً في ملعب.