Как получить полезную нагрузку из саги, кроме функции isType ()? - PullRequest
0 голосов
/ 07 июня 2019

Я определяю действие следующим образом

public static readonly logout = actionCreator<{
  foo: bar,
}>('logout');

Действие имеет свою полезную нагрузку {foo: bar}, как вывести тип полезной нагрузки из действия, чтобы я мог использовать его позже в какой-нибудь общей функции?Как и

someGeneralFunction<Payload>(action: Action, payload: Payload) {
   // i dont want to do this:
   if (isType(action, logout)) {
   }

   // because i somehow passed the action to the function so i know
   // the payload
}

someGeneralFunction<logout>(action)

Я хочу сделать общий обработчик Saga watch_xyz или фабрику функций, где я передаю только несколько аргументов, таких как конкретные действия и т. Д.

Или я хочу использовать isType () динамически, но сохранитьпроверка машинописи полезной нагрузки.

...