Как добавить мультиязычность React приложению | i18next

แชร์
ฝัง
  • เผยแพร่เมื่อ 22 ต.ค. 2024
  • В этом видео расскажу как добавить мультиязыность React приложению.
    1) Разберем установку i18n-react
    2) Настройку i18n
    3) Покажу как перевести с английского на русский в React приложении
    Код с видео здесь - t.me/ineyeblog
    Телеграм пост - t.me/ineyeblog/79

ความคิดเห็น • 78

  • @yakub8798
    @yakub8798 ปีที่แล้ว +11

    а можно шрифт еще меньше а то они слишком большие и у меня не болят глаза

    • @Illya.Landar
      @Illya.Landar  ปีที่แล้ว

      Уже в следующих роликах, а пока есть то что есть

  • @winstontyson603
    @winstontyson603 7 หลายเดือนก่อน +1

    как же изи всё делается через библиотеку, даже редакс и контекст не нужны)) спс за инфу, дружище

    • @Illya.Landar
      @Illya.Landar  7 หลายเดือนก่อน

      Пожалуйста

  • @pseudonim510
    @pseudonim510 7 หลายเดือนก่อน +1

    Все по делу, толковое видео.

    • @Illya.Landar
      @Illya.Landar  7 หลายเดือนก่อน

      Спасибо

  • @luckystrike91
    @luckystrike91 ปีที่แล้ว +2

    спасибо за видео, полезная инфа, только вот смотря с планшета вспомнился один древний мем) с телефона вообще ничего не увидишь. делай шрифт раза в 2-3 крупнее

  • @shevafootbal
    @shevafootbal ปีที่แล้ว +1

    Оно хорошо работает до тех пор пока в проект вы не добавите библиотеку Material UI. После этого TS начинает выкидывать уйму ошибок. Как я понял проблема в перезаписи типов самого реакта. Толкового решения так и не нашёл, хотя попадались несколько способов, но они нестабильные

    • @shevafootbal
      @shevafootbal ปีที่แล้ว

      если интересно, то вот пример ошибки
      The types of 'InputLabelProps.children' are incompatible between these types.
      Type 'ReactI18NextChildren | Iterable' is not assignable to type 'ReactNode'.
      Type 'Record' is not assignable to type 'ReactNode'.
      Type 'Record' is missing the following properties from type 'ReactPortal': key, children, type, prop

    • @Illya.Landar
      @Illya.Landar  ปีที่แล้ว +2

      У меня был на проекте ts i18n и material разных версий, все было ок. Это проблема typescript`a надо tsconfig поправить и будет ок. Загугли i18n и ts проблема типизации.

    • @shevafootbal
      @shevafootbal ปีที่แล้ว +1

      @@Illya.Landar спасибо. Попробую

  • @vladyslavkravchenko5955
    @vladyslavkravchenko5955 2 ปีที่แล้ว +5

    просто, кратко и понятно, спасибо что не забрал пол часа / час моего времени!

  • @baika-native
    @baika-native 2 หลายเดือนก่อน +1

    круто, ясно, понянтно. Спасибо !

    • @Illya.Landar
      @Illya.Landar  2 หลายเดือนก่อน

      пожалуйста

  • @ryukrustplayer
    @ryukrustplayer 10 หลายเดือนก่อน +2

    следующий ролик надо с 4к монитора записывать, чтобы текст еще мельче был, а то весь экран занимает и ничего не понятно...

    • @Illya.Landar
      @Illya.Landar  10 หลายเดือนก่อน

      Согласен

  • @DmytroTorop
    @DmytroTorop ปีที่แล้ว +4

    Спасибо за видео, в личку написал номер карты, жду перевод на лечение глаз))

    • @Illya.Landar
      @Illya.Landar  ปีที่แล้ว +1

      Отправил 10 000$

  • @EduardProgrammer
    @EduardProgrammer ปีที่แล้ว +2

    мое почтение кратко, понятно ,ясно -
    харош

    • @Illya.Landar
      @Illya.Landar  ปีที่แล้ว

      Благодарю, обращайся

  • @mew6085
    @mew6085 ปีที่แล้ว +3

    Гайд нормальный но мелко, на будущее плиз сайзинг кода побольше и в браузере тоже, а то под лупой разглядываю что пишешь)))

  • @lepreclown2180
    @lepreclown2180 9 หลายเดือนก่อน +3

    Подскажите пожалуйста, а что происходит, когда появляются данные с бэка? Как их переводить?

    • @СергейМеньщиков-р2ш
      @СергейМеньщиков-р2ш 7 หลายเดือนก่อน +1

      Тоже интересует , разобрались что делать в такой ситуации?

    • @Arsen-se7qb
      @Arsen-se7qb 16 วันที่ผ่านมา

      Привет.Прошло 8мес, смогли найти ответ ? можете подсказать что делать?

    • @Arsen-se7qb
      @Arsen-se7qb 16 วันที่ผ่านมา

      @@СергейМеньщиков-р2ш Привет.Прошло 6мес, смогли найти ответ ? можете подсказать что делать?

  • @КонстантинСавельев-ф5я
    @КонстантинСавельев-ф5я 2 ปีที่แล้ว +8

    Классный урок, приятно слушать и информацию подано лаконично. Только сделай текст в редакторе чуть по больше, пожалуйста, на мониторе смотреть ещё нормально, но на телефоне сложно что-то разглядеть. За урок огромное спасибо)

    • @Illya.Landar
      @Illya.Landar  2 ปีที่แล้ว +1

      Благодарю за фидбєк

  • @Arsen-se7qb
    @Arsen-se7qb 16 วันที่ผ่านมา

    Здраствуйте, а если тексты с бэкенда ?Что тогда делать ?Если у вас есть видео можете подсказать

  • @fineshine2669
    @fineshine2669 ปีที่แล้ว +2

    Спасибо за видео! использовали для собственного проекта но при деплое через vercel всё перестало работать 🥲 теперь выясняем почему не работает

    • @Illya.Landar
      @Illya.Landar  ปีที่แล้ว

      Попробуй поменять хостинг, если на новом хосте будет работать, значит проблема в Версель

  • @dabiggestfloppa3441
    @dabiggestfloppa3441 2 ปีที่แล้ว +1

    Спасибо за быстрый, информативный гайд!

  • @lektorvt8060
    @lektorvt8060 ปีที่แล้ว

    Такой вопрос, для чего вы установили i18next-browser-languageDetector и i18next-http-backend? Они нужны для бэка? Мне просто нужен чисто фронт

    • @Illya.Landar
      @Illya.Landar  ปีที่แล้ว

      Они нужны для фронта. Что бы хранить локализацию не на беке а в файле на фронте. Все что я установил важно для корректной работы

  • @maxlight9258
    @maxlight9258 ปีที่แล้ว +7

    как уже сказали.. сделай шрифт побольше. на 13 дюймах еле видно

  • @aminabu5985
    @aminabu5985 10 หลายเดือนก่อน +1

    Спасибо большое за видео. А как сделать что бы при обновлении, не сбрасывался ? т.е. если выбрал ru, то и после обновления остался ru. И только при нажатии изменить

    • @Illya.Landar
      @Illya.Landar  10 หลายเดือนก่อน +1

      Сохраняешь в local.storage текущее значение языка. При обновлении в компонент который есть у тебя везде на сайте например хедер. В хедере делаешь useEffect который будет ставить значение которое сохранено в local.storage

  • @danunah12
    @danunah12 8 หลายเดือนก่อน

    А какое в этом случае поведение поисковика? Он смотрит на HTML-файл или он смотрит на Джейсон-файл (с текстом) или он скопмоновывает из HTML и джейсон файлов результирующие страницы на всех языках?

    • @Illya.Landar
      @Illya.Landar  8 หลายเดือนก่อน

      Для React нужно отдельно SEO настройку делать. В этом например помогает библиотека react-helmet

  • @loveanime7254
    @loveanime7254 4 หลายเดือนก่อน +1

    а что делать если много разных текстов, всех их переводить что ли ? Или это можно автомотизировать ?

    • @Illya.Landar
      @Illya.Landar  4 หลายเดือนก่อน

      Переводить на каждый язык

  • @aidasabirova1315
    @aidasabirova1315 9 หลายเดือนก่อน +1

    Только вы сам видите свои код а мы нет к сожалению

  • @ivanzhukovskiy3102
    @ivanzhukovskiy3102 6 หลายเดือนก่อน +1

    Добрый день. У меня возник вопрос, как можно распространить перевод на все компоненты в проэкте ?

    • @Illya.Landar
      @Illya.Landar  6 หลายเดือนก่อน

      да

    • @L__U__B.
      @L__U__B. 5 หลายเดือนก่อน

      @@Illya.Landar что да? что нужно сделать?

  • @telepuzik8349
    @telepuzik8349 3 หลายเดือนก่อน +1

    а можно было еще меньше текст сделать, что бы даже с компа видно ни чего не было?

    • @Illya.Landar
      @Illya.Landar  2 หลายเดือนก่อน

      Да, мне надо не 4к монитор а 8к тогда шрифты будут меньше)

  • @AscaronFrid
    @AscaronFrid 8 หลายเดือนก่อน +1

    спасибо. Лайк.

    • @Illya.Landar
      @Illya.Landar  8 หลายเดือนก่อน

      Пожалуйста

  • @ulugbekvaliev205
    @ulugbekvaliev205 ปีที่แล้ว +1

    спасибо за урок было очень полезно

    • @Illya.Landar
      @Illya.Landar  ปีที่แล้ว

      Пожалуйста, обращайся

  • @Denis-pu4bt
    @Denis-pu4bt 2 ปีที่แล้ว +1

    Отличный урок! Есть вопрос, если например по умолчанию русский и поменяли на английский и перешли на другую страницу приложения (сайта), я так понимаю он уже везде автоматически будет английским?

  • @stanislavbykov3031
    @stanislavbykov3031 ปีที่แล้ว +1

    Спасибо, очень помог

  • @samborsky_pro
    @samborsky_pro 10 หลายเดือนก่อน +1

    Пасиб бро

    • @Illya.Landar
      @Illya.Landar  10 หลายเดือนก่อน

      Пожалуйста

  • @dj_ovosh
    @dj_ovosh ปีที่แล้ว

    Очень хороший и грамотный урок, только можешь текст побольше сделать в редакторе. Глаза аж режет)

  • @wizmine24
    @wizmine24 ปีที่แล้ว +1

    экран слишком крупный, нужно поменьше сделать

  • @tsonga-absolutest
    @tsonga-absolutest 6 หลายเดือนก่อน +1

    мне интересно почему бил гейтс на обложке видео ахахах

    • @Illya.Landar
      @Illya.Landar  6 หลายเดือนก่อน

      Так дизайнер сделал, мне понравилось) заморачиваться не стали.

  • @didipendi
    @didipendi ปีที่แล้ว

    После перезагрузки язык сбрасывается?

    • @Illya.Landar
      @Illya.Landar  ปีที่แล้ว

      Да, до дефолтного который ты указал. Может не сбрасываться если сохранить его например в local storage и при загрузки чекать какой там язык был последним.

  • @tw1spy
    @tw1spy ปีที่แล้ว +1

    чучуть меньше шрифт в вскоде сделай и будет супер !

  • @isaacjon
    @isaacjon ปีที่แล้ว +1

    zdarova bratan ya ne russkiy no ti obyasnil kratko i yasno. delay bolshe kontenta po reaktu i ekrana po bolshe пж

    • @Illya.Landar
      @Illya.Landar  ปีที่แล้ว +1

      Да будет контент по реакту. Благодарю, обращайся

    • @magnific8930
      @magnific8930 ปีที่แล้ว

      @@Illya.Landar да, по поводу экрана, очень мелко, прибавляй пож

  • @Makaler
    @Makaler ปีที่แล้ว +2

    4:55 запятая

  • @denial3874
    @denial3874 ปีที่แล้ว +1

    Так все мелко нехера не видно

    • @Illya.Landar
      @Illya.Landar  ปีที่แล้ว

      есть такое, сори

  • @ihorzhuk4949
    @ihorzhuk4949 ปีที่แล้ว +1

    привет чювак! Уроки крутые! Пожалуйста увеличть свой еркан. на 125-150%!! Очень сложно когда за компом сидишь по 8+ часов смотреть на мелкий шрифт.

    • @Illya.Landar
      @Illya.Landar  ปีที่แล้ว +1

      Cпасибо за фидбєк, сделаю