javascript – 在运行时更改Angular中的区域设置?

我正在做一些关于在运行时更改Angular语言环境的研究,并找到了这个帖子: How to set locale in DatePipe in Angular 2?.
是否仍然无法在运行时更改语言环境?我有一个应用程序,它具有多个管道来根据语言环境格式化数字,日期和语言,但是为每个语言环境实现许多自定义管道 – 而不是在运行时能够更改它 – 似乎很荒谬.
你会用什么解决方案?

解决方法

我打赌你正在寻找这个,因为今天你将@ angular / material升级到beta.10而DatePicker现在使用LOCALE_ID,不是吗?我也在寻找替代方案而且没有运气.

Angular 4 i18n方法基于编译器,为不同的语言生成不同的包,因此该体系结构似乎不支持运行时解决方案. Angular 6编译器正在开展工作以支持运行时转换.

目前,我喜欢ngx-translate方法,他们似乎订阅了lang更改并更新了使用Directive注册的DOM节点,并且我打算基于他们的TranslateDirective构建我自己的DateFormat管道,但是关于使用的服务和组件LOCALE_ID,我认为没有机会在运行时改变它们的行为.可能有新的导出资源用于扩展和定制(我确实阅读了changelog中的内容),因此我们可能需要深入研究我们想要翻译的组件.

如果采用ngx-translate方法,让我们在github上共享内容以构建新的管道;)

相关文章

前言 做过web项目开发的人对layer弹层组件肯定不陌生,作为l...
前言 前端表单校验是过滤无效数据、假数据、有毒数据的第一步...
前言 图片上传是web项目常见的需求,我基于之前的博客的代码...
前言 导出Excel文件这个功能,通常都是在后端实现返回前端一...
前言 众所周知,js是单线程的,从上往下,从左往右依次执行,...
前言 项目开发中,我们可能会碰到这样的需求:select标签,禁...