У меня есть это:
<div class="container">
<h2 i18n="@@prioritizedWordsToLearn">Prioritized Words To Learn</h2>
<table class="table table-striped">
<thead>
<tr>
...
<th i18n="@@previouslyMarkedLearnedColumn">Previously Marked Learned</th>
...
</tr>
</thead>
<tbody>
<tr *ngFor="let word of model">
...
<td>{{word.wasMarkedLearned}}</td>
...
</tr>
</tbody>
</table>
</div>
wasMarkedLearned - логическое значение.Каждая другая строка в приложении была обработана i18n, и приложение работает при запуске через AOT (см. Скриншот).
Однако логическое значение отображается как «true» или «false».
Я могу проверить локаль и перевод жесткого кода перед генерацией таблицы, но это похоже на антипаттерн.
В идеале должна быть поддержка чего-то вроде этого:
{{word.wasMarkedLearned |toString |translate}}
где "translate" читает с карты, предоставленной разработчиком.
Хотя я не вижу ничего подобного.