Внутри моего углового приложения определено следующее дерево редукторов:
export interface State {
user: fromUser.State;
logs: fromLogs.State;
platforms: fromPlatforms.State;
languages: fromLanguages.State;
apps: fromApps.State;
news: fromNews.State;
}
Основными пунктами здесь являются пользователь и редуктор логов. Внутри пользовательского редуктора у меня есть данные вошедшего в систему пользователя с полем userData
. Далее у меня есть редуктор журналов, в котором хранится действие по добавлению журнала:
export class RequestLogsAdd implements Action {
readonly type = LogsActionTypes.REQUEST_LOGS_CHANGE;
constructor(public textTag: string, public actionType: string, public tags: string[], public data: any) { }
}
Конструктор имеет параметры, необходимые для добавления журнала. Когда отправляется это действие, он вызывает следующий редуктор:
case LogsActionTypes.REQUEST_LOGS_CHANGE:
return {
...state,
isLoading: true,
logToAdd: {
textTag: actions.textTag,
type: actions.type,
user: --,
date: new Date(),
tags: actions.tags,
data: actions.data
}
};
Внутри поля пользователя есть «-». Это потому, что я не уверен, как я могу получить пользовательский редуктор здесь. Есть ли способ получить его?
Сначала я думал о добавлении пользователя в качестве одного из параметров внутри конструктора, но я хотел бы получить его от редуктора, чтобы мне не приходилось приводить пользователя везде, где я использую журнал.
Заранее спасибо!