Argument of type 'Http' is not assignable to parameter of type 'Http' in Ionic ngx-translate

前端 未结 2 2012
灰色年华
灰色年华 2021-02-13 19:03

I\'m developing an Ionic 2 mobile app and want to use ngx-translate features. Following the tutorial, I\'m importing necessary files in app module like this:

imp         


        
相关标签:
2条回答
  • 2021-02-13 19:36

    Try using HttpClient

    import {HttpClientModule, HttpClient} from '@angular/common/http';
    import {TranslateModule, TranslateLoader} from '@ngx-translate/core';
    import {TranslateHttpLoader} from '@ngx-translate/http-loader';
    import {AppComponent} from "./app.component";
    
    export function HttpLoaderFactory(http: HttpClient) {
        return new TranslateHttpLoader(http, "./assets/i18n/", ".json");
    }
    
    @NgModule({
        declarations: [
            AppComponent
          ],
        imports: [
            BrowserModule,
            HttpClientModule,
            TranslateModule.forRoot({
                loader: {
                    provide: TranslateLoader,
                    useFactory: HttpLoaderFactory,
                    deps: [HttpClient]
                }
            })
        ],
        bootstrap: [AppComponent]
    })
    export class AppModule { }
    
    0 讨论(0)
  • 2021-02-13 19:42

    the problem is due to a conflict version, maybe you installed a "^1.0.2" version of "@ngx-translate/http-loader" althought your function is available for a previous version. don't worry! you have just to use HttpClient instead of Http ..

    don't forget to change the value of 'deps' constant and import the HttpClientModule in your module (or in your app.module)

    0 讨论(0)
提交回复
热议问题