angular项目语言切换功能
1、NzI18nService服务
参考:https://ng.ant.design/docs/i18n/zh
2、ngx-translate插件
1)安装依赖
npm install @ngx-translate/core --save
npm install @ngx-translate/http-loader --save
2)引入TranslateModule模块
*在AppModule中引入TranslateModule模块
import {TranslateModule} from '@ngx-translate/core';
*根路由引入TranslateModule模块相关配置并在imports中配置如下:
import {TranslateLoader, TranslateModule} from '@ngx-translate/core';
import {TranslateHttpLoader} from '@ngx-translate/http-loader';
import {HttpClient} from '@angular/common/http';
*配置AppModule的 imports如下:
TranslateModule.forRoot({
loader: {
provide: TranslateLoader,
useFactory: HttpLoaderFactory,
deps: [HttpClient]
}
}),
*最后在模块之外导出 HttpLoaderFactory
export function HttpLoaderFactory(http: HttpClient) {
return new TranslateHttpLoader(http);
}
3)引入语言json文件
import { Component } from '@angular/core';
import { TranslateService } from '@ngx-translate/core';
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css']
})
export class AppComponent {
isCollapsed = false;
constructor(public translate: TranslateService) {
translate.addLangs(['en', 'zh']);
translate.setDefaultLang('zh');
const browserLang = translate.getBrowserLang();
translate.use(browserLang.match(/en|zh/) ? browserLang : 'en');
}
}
4)html中使用
{{'app.test' | translate}}
5)页面翻译
引入TranslateService
import { TranslateService } from '@ngx-translate/core';
constructor(private translate: TranslateService) {}
ngOnInit() {
console.log(this.translate.instant('app.title'))
}
参考:
https://stackblitz.com/edit/github-rvuqkx?file=src%2Fapp%2Fapp.module.ts
https://www.jianshu.com/p/082358d49adc
angular项目语言切换功能的更多相关文章
- vue-i18n vue-cli项目中实现国际化 多语言切换功能 一
vue-cli项目中引入vue-i18n 安装: npm install vue-i18n可参考vue-i18n官网文档 main.js中引入: import Vue from 'vue' impor ...
- Android app应用多语言切换功能实现
最近在做一个多语言切换的功能,类似于微信的语言切换,搜了下资料基本上都是以下这种: 1. 实现的效果 和微信类似,在设置界面打开切换语言的界面,选择语言后重启 HomeActivity,语言切换完成, ...
- iOS应用内语言切换功能
当我们的应用仅仅面向国内用户群,一般仅支持一种语言--中文就可以了.当面向国外用户时就需要进行国际化了,不仅仅是语言的转变,也可能包括设计风格,页面布局.交互效果的转变,如微信,微博,QQ这类应用都有 ...
- Android学习–Android app 语言切换功能
功能: app用户根据自己的语言喜好,设置app语言.语言设置只针对本app,并在下次启动应用时保留前一次启动设置. 更新语言: public static void changeAppLanguag ...
- react项目实现多语言切换
网站的语言切换功能大家都见过不少,一般都是一个下拉框选择语言,如果让我们想一下怎么实现这个功能,我相信大家都是有哥大概思路,一个语言切换的select,将当前的选择的语言存在全局,根据这个语言的key ...
- angular项目国际化配置(ngx-translate)
原文 https://www.jianshu.com/p/7d1da3098625 大纲 1.认识ngx-translate 2.ngx-translate的配置步骤 3.ngx-translate的 ...
- ASP.NET MVC5多语言切换快速实现方案
功能 实现动态切换语言,Demo做了三种语言库可以切换,包括资源文件的定义,实体对象属性设置,后台代码Controller,IAuthorizationFilter,HtmlHelper的实现,做法比 ...
- GitHub小技巧-定义项目语言
GitHub是根据项目里文件数目最多的文件类型,识别项目类型.后端项目难免会包含前端的资源,有时候就会被标记成前端语言,因为项目里 css 等文件比较多, 被误识别成css项目. GitHub不提供指 ...
- 基于.NetCore开发博客项目 StarBlog - (14) 实现主题切换功能
系列文章 基于.NetCore开发博客项目 StarBlog - (1) 为什么需要自己写一个博客? 基于.NetCore开发博客项目 StarBlog - (2) 环境准备和创建项目 基于.NetC ...
- angular5 基于ngx-translate实现多语言切换
angular的坑永远都是那么多,当然了,主要还是我太菜~ 基于ngx-translate实现多语言切换这个功能,我又是折腾了很久,下面是我实现的过程: 1.安装ngx-translate 需要安装@ ...
随机推荐
- win10 校验MD5值
CertUtil -hashfile C:\xxxxx\xxx.xxx MD5 // C:\xxxxx\xxx.xxx为文件路径
- spring 使用@Async注解实现异步调用
1.先定义一个事件,该类继承 ApplicationEven的抽象类 import org.springframework.context.ApplicationEvent; public class ...
- 玩玩 Visual Studio Code 和 MSYS2
注意:为了便于理解本文内容,您可能需要一些前置知识,例如命令行操作,编译器操作,路径操作,环境变量操作,vscode操作-- 众所周知 Visual Studio Code 是一个优秀的编辑器. 众所 ...
- 城市间最短路径问题——R和Rcpp实现
这里的最短路径问题也叫做相识问题,具体问题来自 https://www.math.pku.edu.cn/teachers/lidf/docs/Rbook/html/_Rbook/examples.ht ...
- docker镜像的获取、查看、删除、docker镜像管理、docker容器管理
在不想弄乱本地及其环境下该如何进行系软件的安装? 下载安装docker工具 获取该软件的docker镜像(你以后想要用各种工具,基本都能够搜索docker search nginx:版本号到合适的镜像 ...
- 不符合Json格式都能被Gson 转成对象使用!!!
问题描述: 在与前端测试的时候,前端下发商品档案,结构为{""items":[{A对象},{B对象},{C对象}]},他下发了504条数据,但我们插入数据库的时候 只有1 ...
- torch.squeeze函数解释,torch.FloatTensor()函数作用解释
1. torch.squeeze(x,N) 主要对数据维度进行压缩 torch.squeeze(x,N) #也可以写为格式 x.squeeze(dim=N) 含义:当N未给定时,去掉x中所有维度为1 ...
- chrome浏览器启用es6语法支持,初次体验浏览器端模块化加载
医院项目,记录下,花了一个晚上的时间. 注意:最新版本的chrome浏览器已支持module语法,需要在web服务器环境下运行! 注:chrome76版本及以上不再需要设置了,浏览器已默认支持,至于从 ...
- 2. Marker 标记(就是在地图上放上标记)
1 <!DOCTYPE html> 2 <html lang="zh"> 3 <head> 4 <meta charset="U ...
- 【C学习笔记】day2-5 求两个数的最大公约数
#include <stdio.h> int main() { int a, b; int min; scanf_s("%d %d", &a, &b); ...