I am trying to assing an object to another object with the same type.
So, I have this object 'Language'
export class Language {
languageDescription: string;
languageCode: string;
isDefault: boolean;
}
And I declared two objects selectedLanguage
and childSelectedLanguage
with the Language type :
@State<LanguageSelectorStateModel>({
name: 'languageSelector',
defaults: {
languages: [],
selectedLanguage: null,
childSelectedLanguage: null
}
})*
After the selectedLanguage is populated( no more null),
@Action(UpdateSelectedLanguage)
@ImmutableContext()
updateSelectedLanguage({ getState, patchState }: StateContext<LanguageSelectorStateModel>, { languageCode }: UpdateSelectedLanguage) {
const state = getState();
const selectedLanguage = state.languages.find(language => language.languageCode === languageCode);
state.selectedLanguage = selectedLanguage;
patchState(state);
}
I tried to assign the same content of this value : to childSelectedLanguage.
childSelectedLanguage = selectedLanguage;
But childSlectedLanguage still null, despite that selectedLanguage is not.
I tried also
@Action(InitializeChildrenSelectedLanguage)
initializeChildrenSelectedLanguage(
{ getState, patchState }: StateContext<LanguageSelectorStateModel>,
{ }: InitializeChildrenSelectedLanguage
) {
const state = getState();
Object.assign(state.childSelectedLanguage, state.selectedLanguage);
patchState(state);
}
But also i can't assign the object to the content.
First question: Why I cannot assign the object?
Second question: How can I resolve the problem?