загрузка HttpLoaderFactory переводчик не работает после возобновления подключения к сети - PullRequest
0 голосов
/ 25 июня 2018

Я работаю над приложением со следующими конфигурациями:

  1. @ ionic / app-scripts: 3.1.9
  2. Платформы Cordova: android 6.2.3
  3. Ionic Framework: ионно-угловой 3.9.2

Я использую библиотеку перевода из @ ngx-translate / core для процесса перевода.Проблема, с которой я сталкиваюсь, заключается в том, что мой переводчик в первом случае работает нормально, но когда я отключаю сеть (подключение к данным) и возобновляю ее позже, переводчик не работает должным образом, он загружает только метки, а не назначенный ему текст.

Код, который я использую:

В файле module.ts, используя

import { HttpClient } from '@angular/common/http';
import { TranslateModule, TranslateLoader } from '@ngx-translate/core';
import { TranslateHttpLoader } from '@ngx-translate/http-loader'


export function HttpLoaderFactory(http: HttpClient) {
return new TranslateHttpLoader(http, '../../assets/i18n/', '.json');
}

@NgModule({
declarations: [

],
imports: [
TranslateModule.forRoot({
loader: {
      provide: TranslateLoader,
      useFactory: HttpLoaderFactory,
      deps: [HttpClient]
  }
})

Мой файл en.json в папке assets выглядит следующим образом

{
"DashboardPage": {
    "WelcomeText": "Welcome",
    "LastUpdatedText": "Last Updated on",
    "Disbursal": "Disbursal",
    "NEA" : "NEA",
    "Yield" : "Yield"
}
}

, и яЯ использую метки на HTML, как это

 <div *ngIf="IsFromLogin">
      <h2 >{{'DashboardPage.WelcomeText' | translate}} {{userData.name}}</h2>
    </div>

Когда я возобновляю подключение к сети, на экране отображаются метки типа DashboardPage.WelcomeText вместо того, чтобы показывать текст, назначенный ему на всех экранах.

Я пробовал несколько извещи, но не в состоянии получить реальную причину этого. Кто-нибудь может предложить какое-то решение для этого. Спасибо заранее !!

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

1 Ответ

0 голосов
/ 26 июня 2018

У меня есть решение для моей проблемы после попытки в течение дня.

Я ссылался на эту ссылку для того же Ionic3 ленивая загрузка и перевод не работают вместе

На моей странице module.ts (как и в моем случае это dashboard.module.ts) вместо

imports: [
TranslateModule.forRoot({
loader: {
  provide: TranslateLoader,
  useFactory: HttpLoaderFactory,
  deps: [HttpClient]
 }
})

Я использовал код

imports: [
IonicPageModule.forChild(DashboardPage),
ComponentsModule,
TranslateModule.forChild()  
],
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...