Magic Translate vs. vue-i18n
vue-i18n ist die Standard-I18n-Bibliothek für Vue, und @nuxtjs/i18n baut darauf für Nuxt auf. Wie die meisten i18n-Bibliotheken verwendet es einen Schlüssel für jede Nachricht und eine Reihe von Nachrichten pro Sprache. Magic Translate übersetzt den Text in deinen Vue-Vorlagen direkt, ohne Schlüssel oder Nachrichtendateien.
Auf einen Blick
| Magic Translate | vue-i18n | |
|---|---|---|
| Wie schreibst du Text | Deine eigenen Worte, verpackt in <T> | Ein Schlüssel für jede Nachricht, wie $t('cart.title') |
| Übersetzungen | KI-Übersetzung, automatisch erstellt | Du oder deine Übersetzer schreiben sie. |
| Nachrichtendateien | Keine | Ein Satz von Nachrichten pro Sprache |
| Neue Sprachen | Ändere die Einstellung language | Übersetze jede Nachricht in die neue Sprache |
| Sprache wechseln | Zur Laufzeit, mit useLanguageSwitcher | Zur Laufzeit, indem du das Gebietsschema änderst |
| Pluralformen und Formatierung | Übersetzt als Teil des Satzes | Eingebaut, mit Pluralregeln und Datums- und Zahlenformatierung |
| Preis | Kostenloses Abo, dann monatliche Tarife je nach Nutzung | Open Source und kostenlos |
Wie sich der Code unterscheidet
Mit vue-i18n definierst du die Nachrichten für jede Sprache und bezeichnest sie mit dem Schlüssel:
// i18n.tsimport { createI18n } from 'vue-i18n';export const i18n = createI18n({locale: 'de',messages: {en: { cart: { title: 'Your shopping cart' } },de: { cart: { title: 'Ihr Warenkorb' } }}});
<h2>{{ $t('cart.title') }}</h2>
Bei Magic Translate bleibt der Text in der Vorlage:
<h2><T>Your shopping cart</T></h2>
Für Attribute wie Platzhalter verwende useTranslate:
<input :placeholder="t('Search products')" />
Wann wähle ich Magic Translate
- Du willst deine Vue-App in vielen Sprachen haben, ohne Nachrichten für jede einzelne zu verwalten.
- Du hast keine Übersetzer oder du möchtest Updates veröffentlichen, ohne auf Übersetzungen zu warten.
- Dein Text ändert sich oft und du möchtest, dass jede Sprache auf dem neuesten Stand bleibt.
Wann wähle ich vue-i18n
- Der gesamte Text muss von einer Person übersetzt oder überprüft werden.
- Du benötigst Suchmaschinen, um übersetzten HTML-Code vom Nuxt-Server-Rendering zu sehen. Magic Translate für Vue wird im Browser übersetzt.
- Du möchtest eine kostenlose Open-Source-Bibliothek ohne externen Dienst.
Wechsel von vue-i18n zu Magic Translate
Du kannst eine Komponente nach der anderen wechseln. Ersetze $t('key') durch den englischen Text aus deinen Nachrichten, verpackt in <T>, oder verwende t() von useTranslate für Attribute. Beide Bibliotheken können Seite an Seite laufen, während du migrierst. Die Anleitung Vue zeigt die Einrichtung.
Bereit, es zu versuchen? Folge der Anleitung für die ersten Schritte, um deine erste Komponente in fünf Minuten zu übersetzen.