我有一个显示日期/时间的项目。我想使用格式化的日期/时间。但它应该取决于浏览器/客户端语言格式而不是固定格式。
在以下文章中,它使用带有管道的固定格式。这不是我需要的! " How to format date as dd/MM/yyyy in Angular 2 using pipes?"
谢谢..
答案 0 :(得分:1)
我正在使用angular2localization进行国际化。它似乎通过设置一个区域设置(虽然你需要通过用户操作或配置设置'自己调整'这个初始化)来设置一个区域设置。
angular2localization documentation
它确实使用管道,而不是硬编码使用在启动时生成的区域设置引用。
好处是,当更改区域设置时,它会立即调整设置并缓存区域设置,以便在下次打开页面时使用。它是一个客户端/用户特定的而不是服务器覆盖选项(尽管如果你愿意全局,你可以强制使用语言环境)
// Sets a new locale & currency.
selectLocale(language: string, country: string, currency: string, selectionText: string): void {
//Page will translate to new language automatically and without refreshing
//- the power of pipes...
this.locale.setCurrentLocale(language, country);
this.locale.setCurrentCurrency(currency);
}
无论如何,希望这有帮助。
答案 1 :(得分:1)
我找到了一种更简单的方法!碰巧我在一个月后偶然发现了这个解决方案。
var d = new Date();
var n = d.toLocaleDateString();
来源:http://www.w3schools.com/jsref/jsref_tolocaledatestring.asp