Я пытаюсь предоставить объект, который содержит мои ключи перевода и пример его значений:
{
"try_again_key": "Try Again",
"cancel_key": "Cancel",
"other_key": "Other"
...
}
Я должен импортировать этот объект в свой модуль функций и предоставить его в библиотеку, чтобы я могиспользуйте translate из Angular, но в моем случае мне нужно объединить 2 объекта (оба с разными ключами перевода) следующим образом:
import { myFallback } from "../../locale/fallback-ts";
import { otherFallback} from "@company/platform-components";
@NgModule({
imports: [
TranslationsModule.forChild([
{
domain: "domain",
service: "service",
fallback: { ...otherFallback, ...myFallback },
},
]),
когда я регистрирую откат на JIT = содержит мои 2 объединенных объекта
когда я записываю откат на AOT = пустой объект
import { myFallback } from "../../locale/fallback-ts";
import { otherFallback} from "@company/platform-components";
@NgModule({
imports: [
TranslationsModule.forChild([
{
domain: "domain",
service: "service",
fallback: myFallback,
},
]),
когда я записываю откат на JIT / AOT = содержит мой объект
, но если я делаю так, он работаетно это не помогает мне, потому что я не буду объединять объекты, кажется, что операторы распространения не поддерживаются Angular AOT
некоторые ссылки, которые я нашел о AOT: https://angular.io/guide/aot-compiler в этой ссылкеон не указывает, что я не могу использовать с оператором распространения
эта проблема с github выглядит так, как мне нужно, но она была проигнорирована угловой командой https://github.com/angular/angular-cli/issues/9511
мой вопрос, я делаючто-то не так?если это ограничение от углового AOT, могу ли я объединить 2 объекта другим способом?
То, что я пробовал:
с использованием Object.assign()
вместо оператора распространения.
объявлениеconst, который получает эти 2 объекта и затем импортирует его по моему .forChild()
методу
export const fallback = { ...tsValues, ...jsonValues};