У меня есть модальный интерфейс данных
interface ModalData {
...
payload: any; // At any given time, this payload might be a string or number or boolean;
...
}
В модальной полезной нагрузке данных есть возможность разных типов, поэтому для этого я создал другой тип:
type IPayLoad = string | number | boolean;
Теперь, когда Я использую эти типы в своем коде. Я получаю следующие ошибки:
Проблема в том, что мне не нравится установка типа any
для полезной нагрузки выше. Но если я установлю его на тип IPayLoad
, я получу следующие ошибки:
this.service.saveString(modal.payload) // Argument of type 'IPayLoad' id not assignable to parameter of type 'string'.
this.service.saveNumber(modal.payload) // Argument of type 'IPayLoad' id not assignable to parameter of type 'number'.
this.service.saveBool(modal.payload) // Argument of type 'IPayLoad' id not assignable to parameter of type 'boolean'.
Функции вызова в службе приведены ниже:
public saveString(res: string): void {}
public saveNumber(res: number): void {}
public saveBool(res: boolean): void {}