微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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上共享内容以构建新的管道;)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐