JavaScript

超轻量级php框架startmvc

如何在Angular8.0下使用ngx-translate进行国际化配置

更新时间:2020-09-05 07:48:01 作者:startmvc
一.将ngx-translate添加到Angular应用程序中npminstall@ngx-translate/core@ngx-translate/http-loaderrxjs--save二.

一. 将ngx-translate添加到Angular应用程序中


npm install @ngx-translate/core @ngx-translate/http-loader rxjs --save

二.在app.module.ts中初始化翻译TranslateModule


import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';

import { AppComponent } from './app.component';

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

@NgModule({
 declarations: [
 AppComponent
 ],
 imports: [
 BrowserModule,

 // ngx-translate and the loader module
 HttpClientModule,
 TranslateModule.forRoot({
 loader: {
 provide: TranslateLoader,
 useFactory: HttpLoaderFactory,
 deps: [HttpClient]
 }
 })
 ],
 providers: [],
 bootstrap: [AppComponent]
})
export class AppModule { }

// required for AOT compilation
export function HttpLoaderFactory(http: HttpClient) {
 return new TranslateHttpLoader(http);
}

三.在app.component.ts中设置初始值


import {Component} from '@angular/core';
import {TranslateService} from '@ngx-translate/core';

@Component({
 selector: 'app-root',
 templateUrl: './app.component.html',
 styleUrls: ['./app.component.scss']
})
export class AppComponent {
 constructor(private translate: TranslateService) {
 translate.setDefaultLang('en');
 }
}

四.在assets/i18n文件下创建让我们为英文翻译创建相关语言JSON文件,如en.json文件


{
 "demo.title": "Translation demo",
 "demo.text": "This is a simple demonstration app for ngx-translate"
}

五.在app.component.html中使用


<div>
 <!-- translation: translation pipe -->
 <h1>{{ 'demo.title' | translate }}</h1>

 <!-- translation: directive (key as attribute)-->
 <p [translate]="'demo.text'"></p>

 <!-- translation: directive (key as content of element) -->
 <p translate>demo.text</p>
</div>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

Angular8使用ngx-translate国际化 Angular8.0 国际化