Для использования метода instant
вы должны быть уверены, что ваши переводы были загружены, и его можно безопасно использовать, в противном случае это не удастся. Это может быть главное.
Объяснение простое, у вас есть три способа загрузки перевода:
Вы уверены, что ваши файлы перевода уже загружены и не нуждаются в обновлениях: translate.instant ('key')
Вы не уверены в загрузке и не нуждаетесь в обновлениях (возвращает Observable для подписки): translate .get ('key')
Вы хотите обновления, когда пользователь меняет язык:
translate.stream ('key')
Я думаю, что вы можете использовать опцию get, как и вариант с менее известными ошибками:
let userName = 'Nick'
translateService.get('MY_STRING', { user: this.userName }).subscribe((text:string) => {console.log(text});