this.i18n.use怎么使用
时间: 2024-02-26 14:56:56 浏览: 25
`this.i18n.use()` 是 Angular 内置的 `@angular/localize` 模块中的一个方法,用于设置当前的语言环境。在使用该方法前,需要先注入 `I18n` 服务。
使用 `this.i18n.use()` 的步骤如下:
1. 在 app.module.ts 文件中,导入 `I18n` 模块,并将其添加到 providers 数组中注入:
```typescript
import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { I18n } from '@ngx-translate/i18n-polyfill';
@NgModule({
imports: [BrowserModule],
providers: [I18n],
bootstrap: [AppComponent]
})
export class AppModule {}
```
2. 在组件中注入 `I18n` 服务:
```typescript
import { Component } from '@angular/core';
import { I18n } from '@ngx-translate/i18n-polyfill';
@Component({
selector: 'app-root',
templateUrl: './app.component.html'
})
export class AppComponent {
constructor(private i18n: I18n) {}
}
```
3. 在需要切换语言环境的地方,调用 `this.i18n.use()` 方法,并传入对应的语言环境代码。例如,切换到中文环境:
```typescript
this.i18n.use('zh-CN');
```
4. 如果需要获取当前的语言环境代码,可以使用 `this.i18n.currentLang` 属性:
```typescript
console.log(this.i18n.currentLang); // 输出当前的语言环境代码
```
注意:在使用 `I18n` 服务时,需要先安装 `@ngx-translate/i18n-polyfill` 模块,并在 app.module.ts 文件中导入并添加到 `imports` 数组中。