当使用angular-translate时,我遇到了一个奇怪的问题(没有显示翻译),参数插值作为日期对象.
但首先要做的事情是:here是吸血鬼.
.
在翻译提供程序中使用清理策略’escapeParameters’,
为什么用这样的json格式化:
$scope.title = { day: 'tomorrow', today: new Date() };
我的翻译结果总是{},使用签约表格
{{'VARIABLE_REPLACEMENT' | translate : title}}
<translate="VARIABLE_REPLACEMENT" translate-values="{ day: 'tomorrow', today: title.today }">
正如您所看到的,使用angular-translate的其他方法似乎工作得很好.这是某种错误吗?或者我做错了什么?
最佳答案 看起来像一个已知的bug.在
https://angular-translate.github.io/docs/#/guide/19_security他们说
Currently there is an issue with the sanitize mode, it will double
encode UTF-8 characters or special characters. Recommendation: use the
‘escape’ [instead of ‘escapeParameters’] strategy, until this is
resolved.
所以,我想如果你想在第一次和第三次测试中使用这些变体,你可能必须坚持使用“逃避”策略.或者,将日期字符串格式化为没有导致问题的任何字符.
当我编辑你的plunker使用’escape’时,你的所有四个测试都运行良好.