TacoTranslate-ის გამოყენება
სტრინგების თარგმნა
ამჟამად არსებობს სტრიქონების თარგმანის სამი გზა: Translate
კომპონენტი, useTranslation
hook, ან translateEntries
დანამატი.
გამოყენება Translate
კომპონენტის.
გავრცელებს თარგმნებს span
ელემენტის ფარგლებში და მხარს უჭერს HTML-ის ჩვენებას.
import {Translate} from 'tacotranslate/react';
function Page() {
return <Translate string="Hello, world!" />;
}
კომპონენტზე მაგალითად, შეგიძლიათ შეიცვალოთ ელემენტის ტიპი as="p"
გამოყენებით.
გამოიყენეთ useTranslation
hook.
მიბრუნებს თარგმნებს ჩვეულებრივი სტრიქონის სახით. გამოსადეგია, მაგალითად, meta
ტეგებში.
import {useEffect} from 'react';
import {useTranslation} from 'tacotranslate/react';
function Page() {
const helloWorld = useTranslation('Hello, world!');
useEffect(() => {
alert(helloWorld);
}, [helloWorld]);
return (
<title>{useTranslation('My page title')}</title>
);
}
გამოიყენეთ translateEntries
იუტილიტი.
თარგმნეთ სტრინგები სერვერზე. გააძლიერეთ თქვენი OpenGraph გამოსახულებები.
import {createEntry, translateEntries} from 'tacotranslate';
async function generateMetadata(locale = 'es') {
const title = createEntry({string: 'Hello, world!'});
const description = createEntry({string: 'TacoTranslate on the server'});
const translations = await translateEntries(
tacoTranslate,
{origin: 'opengraph', locale},
[title, description]
);
return {
title: translations(title),
description: translations(description)
};
}
როგორ თარგმნება სტრიქონები
როდესაც სტრიქონები ჩვენს სერვერებზე მიდის, ჩვენ პირველ რიგში ვამოწმებთ და ვაკეთებთ შენახვას, შემდეგ კი დაუყოვნებლივ ვაბრუნებთ მანქანურ თარგმანს. მიუხედავად იმისა, რომ მანქანური თარგმანები ჩვეულებრივ ახასიათებს დაბალი ხარისხი ჩვენი AI თარგმანების მიმართ, ისინი უზრუნველყოფენ სწრაფ პირველადი პასუხს.
ერთდროულად, ჩვენ ვიწყებთ ასინქრონულ თარჯიმნულ პროცესს, რათა შემოგთავაზოთ მაღალი ხარისხის, უახლესი ტექნოლოგიების მქონე AI თარჯიმანი თქვენი სტრიქონისთვის. როდესაც AI თარჯიმანი მზად იქნება, ის ჩაანაცვლებს მანქანურ თარჯიმანს და გაიგზავნება თქვენივე თხოვნისას, როდესაც თარგმანებს ითხოვთ თქვენი სტრიქონებისთვის.
თუ მანუალურად გადათარგმნეთ სტრიქონი, ამთარგმნელები პრიორიტეტს მიიღებენ და ამ სტრიქონს დააბრუნებენ.
ობიექტების გამოყენება
TacoTranslate პროექტები შეიცავს იმას, რასაც ჩვენ ვუწოდებთ ორიგინებს. წარმოიდგინეთ ისინი როგორც შესვლის წერტილები, ფოლდერები ან ჯგუფები თქვენი სიმბოლოებისა და თარგმანებისთვის.
import {TacoTranslate} from 'tacotranslate/react';
function Menu() {
return (
<TacoTranslate origin="application-menu">
// ...
</TacoTranslate>
);
}
ორიგინები საშუალებას გაძლევენ სიტყვები გაანაწილოთ მნიშვნელოვანი კონტეინერების მიხედვით. მაგალითად, თქვენ შეიძლება გქონდეთ ერთი ორიგინი დოკუმენტაციისთვის და ერთი თქვენი მარკეტინგული გვერდისთვის.
ჯეროვანი კონტროლისთვის, შეგიძლიათ დააყენოთ origins კომპონენტის დონეზე.
ამის მისაღწევად, გაითვალისწინეთ რამდენიმე TacoTranslate პროვაიდერის გამოყენება თქვენს პროექტში.
გთხოვთ გაითვალისწინოთ, რომ ერთი და იგივე სტრინგი სხვადასხვა წარმომავლობებში შეიძლება სხვადასხვა თარჯიმნები მიიღო.
ამატებითი საკითხია, თუ როგორ გაეყოფათ სტრიქონები ორიგინებს, ეს თქვენს და თქვენს საჭიროებებზეა დამოკიდებული. თუმცა, გაითვალისწინეთ, რომ ერთ ორიგინში მრავალი სტრიქონის ყოფნამ შეიძლება გაზარდოს დატვირთვის დრო.
პარამეტრების მართვა
თქვენ ყოველთვის უნდა გამოიყენოთ ცვლადები დინამიური შინაარსისათვის, როგორიცაა მომხმარებლის სახელები, თარიღები, ელ-ფოსტის მისამართები და სხვა.
სტრიქონებში ცვლადები გამოაქვთ ორმაგი ფრჩხილებით, მაგალითად, {{variable}}
.
import {Translate} from 'tacotranslate/react';
function Greeting() {
const name = 'Juan';
return <Translate string="Hello, {{name}}!" variables={{name}} />;
}
import {useTranslation} from 'tacotranslate/react';
function useGreeting() {
const name = 'Juan';
return useTranslation('Hello, {{name}}!', {variables: {name}});
}
HTML შინაარსის მართვა
ნაგულისხმევად, Translate
კომპონენტი მხარს უჭერს და აჩვენებს HTML კონტენტს. თუმცა, ამ ქცევიდან გამოსვლა შეგიძლიათ useDangerouslySetInnerHTML
განუსაზღვრელად დააყენოთ false
.
HTML-ის რენდერირების გათიშვა ძვირფასად რეკომენდირებულია არასანდო კონტენტების, როგორიც არის მომხმარებლის მიერ გენერირებული კონტენტი, თარგმნისას.
ყველა გამომავალი ყოველთვის გაიწმინდება sanitize-html გამოყენებით, სანამ რენდერზე გაიტანება.
import {Translate} from 'tacotranslate/react';
function Page() {
return (
<Translate
string={`
Welcome to <strong>my</strong> website.
I’m using <a href="{{url}}">TacoTranslate</a> to translate text.
`}
variables={{url: 'https://tacotranslate.com'}}
useDangerouslySetInnerHTML={false}
/>
);
}
ზემოთა მაგალითი გამოჩნდება როგორც უბრალო ტექსტი.