להגיב ל: תרגום עם i18n

  • avigail O

    הייטק
    חברה
    02/01/2020 ב2:18 pm

    שלום וברכה! להלן שלבים בהוספת תמיכה בשפות בעזרת i18n: (חומר נוסף תוכלי למצוא כאן: https://github.com/ngx-translate/core) לפני נוסיף את הספריה לניהול שפות- חשוב לציין שצריך קודם להכין קבצי json עם תרגומים בתקייה בשם “i18n” בתקיה assets. כל קובץ נקרא בשם השפה שאותה הוא מייצג (אנגלית= en.json, עברית= he.json) מבנה קובץ לדוגמה: {
    home:”My Home”
    } (הספריה תתרגם את הטקסטים לפי השפה שיתנו לה. אם יתנו לה he היא תפנה לקובץ בשם he.json וכן הלאה. לכן חשוב להקפיד על שמות נכונים של השפה) וכעת להתקנה: דבר ראשון יש להתקין את הספריה ע”י הרצת הפקודה: npm install @ngx-translate/core שנית, יש לייבא את הספריה הנ”ל בקובץ app.module.ts באופן הבא: יש לייבא את הספריות ע”י הוספת השורות ההבאות: import { TranslateHttpLoader } from ‘@ngx-translate/http-loader’;
    import { TranslateModule, TranslateLoader } from ‘@ngx-translate/core’; בגוף הקובץ app.module.ts יש להגדיר את ההפניה לתקיה שציינו קודם (בשם i18n) המכילה את קבצי התרגום: (שימו לב שמשתמשים גם בספריה HttpClient. רוב הסיכויים שכבר התקנתם אותה קודם, אבל אם לא- יש להתקין גם אותה) export function httpLoaderFactory(httpClient: HttpClient) {
    return new TranslateHttpLoader(httpClient, ‘../../assets/i18n/’, ‘.json’);
    } ולאחר מכן במערך של ה imports ניבא את הפונקציה שהגדרנו לעיל כך: imports: [
    …….
    TranslateModule.forRoot({
    loader: {
    provide: TranslateLoader,
    useFactory: httpLoaderFactory,
    deps: [HttpClient]
    }
    }),
    ………
    ], עד כאן על ההתקנה. אופן השימוש: דבר ראשון נרצה להגדיר לספריה באיזה שפות להשתמש. בד”כ נגדיר את זה ב app.component.ts: נייבא ב constructor את הservise של ספרית התרגומים: constructor(private translate: TranslateService) {
    ונגדיר עבור הספריה את שפת ברירת המחדל שלה (בשורה הראשונה) ואת השפה השימושית עכשיו (בשורה השניה) this.translate.setDefaultLang(‘en’);
    this.translate.use(‘en’); כעת הדפדפן ישתמש בשפה האנגלית המכונה ‘en’ בקבצי התרגום. אפשר להשתמש בשורות הנ”ל כדי להחליף שפה ע”י לחיצת כפתור! אם למשל נרצה להחליף את השפה לעברית: this.translate.setDefaultLang(‘he’);
    this.translate.use(‘he’); שימוש ב html: על מנת להשתמש בתרגום ב html נשתמש ב Pipe המובנה של הספריה בשם translate. דוגמה לשימוש: אם בקובץ en.json שלנו מוגדר התרגום הבא: {
    home:”My Home”
    } נשתמש במילה home ב html בצורה הבאה: {{‘home’|translate}} והטקסט שיוצג יהיה: My Home כמובן אנחנו כאן לכל שאלה נוספת… המון הצלחות!!!!!

מעוניינת בפרסום

חשוב: לא כל פרסום מאושר, נא לפרט בדיוק במה מדובר

ניתן לפנות גם במייל ל: [email protected]

מה את מחפשת?

מילות מפתח פופולריות לפי תחומים

ניתן לחפש גם מילות מפתח , תפקידים וכישרון מיוחד שאינם מופיעים ברשימות - "נהגת", "ציור בחול" וכדומה.

דילוג לתוכן