Angular 4/Angular cli:带国际化API的日期多边形填充不起作用

Angular 4/Angular cli:带国际化API的日期多边形填充不起作用,angular,angular-cli,angular2-pipe,date-pipe,Angular,Angular Cli,Angular2 Pipe,Date Pipe,我似乎无法让国际化API的polyfill正常工作。 如文件() 只需将脚本添加到index.html即可: <script src="https://cdn.polyfill.io/v2/polyfill.min.js?features=Intl.~locale.de"></script> 所有显示错误日期管道的问题都应该解决。然而,这个问题仍然存在 在另一个网页()上,我发现了一个更受欢迎的解决方案,即安装国际化API并将其添加到angular src文件夹中

我似乎无法让国际化API的polyfill正常工作。 如文件() 只需将脚本添加到index.html即可:

<script src="https://cdn.polyfill.io/v2/polyfill.min.js?features=Intl.~locale.de"></script> 

所有显示错误日期管道的问题都应该解决。然而,这个问题仍然存在

在另一个网页()上,我发现了一个更受欢迎的解决方案,即安装国际化API并将其添加到angular src文件夹中的
polyfills.ts

应该
npm运行install intl--save
,然后像

输入‘国际’;
导入“intl/locale data/jsonp/de.js”
是否有人成功地将日期多边形填充添加到Angular 4中


一些人建议使用
moment.js
中的自定义管道,但这对我来说不是一个解决方案(),因为像angular这样强大的beast应该提供这样的功能。也许我做错了什么?

您不能随意使用angulars datePipe来格式化日期。这样:
| date:'HH:mm'
这在chrome中工作,但在edge中不显示:
08:15
。您可以使用Angular的“短时”管道进行此操作

2017年5月8日编辑: 任何人在Safari中仍面临国际化API问题:
请确保您传递的日期类似于
{“2016-07-03T12:33Z”| date'dd.MM.yyyy'}
,因此您需要它的ISO字符串表示才能工作(仅在safari中需要),谢谢apple。

您不能自由使用angulars datePipe来格式化日期。这样:
| date:'HH:mm'
这在chrome中工作,但在edge中不显示:
08:15
。您可以使用Angular的“短时”管道进行此操作

2017年5月8日编辑: 任何人在Safari中仍面临国际化API问题:
请确保您传递了一个日期,如
{“2016-07-03T12:33Z”| date'dd.MM.yyyy'}
,因此您需要它的ISO字符串表示才能工作(仅在safari中需要),谢谢apple。

似乎cdn.polyfill.io cdn不提供任何js polyfill。这可能是cdn的问题。即使是实时示例也不会返回任何代码,只返回一条注释:。首选的方法确实是使用NPM并导入您需要的pollyfill谢谢您的回复,您的回复有效吗?没有尝试过,不确定会发生什么?如果成功了,你怎么知道?你将如何测试它?你能给我一个示例代码吗?我可以在我的本地电脑上试用,有和没有intl/de的预期输出?很抱歉,我想这是我的错。polyfill有效,但我没有注意到,因为我的格式错误。我想我可以自由地设置“date:'HH:mm'”这样的格式,因为我想我需要一个德国时间。但当我设置正确的区域设置时,我可以使用Angulars“shortTime”进行格式化。奇怪的是,它在chrome中工作,但在edge中却不工作……那么预期的格式是什么呢?日期将如何格式化?德语格式是什么?你能提供一些例子吗?看起来cdn.polyfill.io cdn没有提供任何js polyfill。这可能是cdn的问题。即使是实时示例也不会返回任何代码,只返回一条注释:。首选的方法确实是使用NPM并导入您需要的pollyfill谢谢您的回复,您的回复有效吗?没有尝试过,不确定会发生什么?如果成功了,你怎么知道?你将如何测试它?你能给我一个示例代码吗?我可以在我的本地电脑上试用,有和没有intl/de的预期输出?很抱歉,我想这是我的错。polyfill有效,但我没有注意到,因为我的格式错误。我想我可以自由地设置“date:'HH:mm'”这样的格式,因为我想我需要一个德国时间。但当我设置正确的区域设置时,我可以使用Angulars“shortTime”进行格式化。奇怪的是,它在chrome中工作,但在edge中却不工作……那么预期的格式是什么呢?日期将如何格式化?德语格式是什么?你能举个例子吗?