Я создаю приложение React с использованием TypeScript.
Я пытаюсь определить функцию (для HOC), которая принимает параметр с именем value
, который может быть либо строкой, либочисло или функция, которая возвращает строку или число.
Итак, я попробовал:
const myHOC = (
value: string | number | () => string | () => number
) => WrappedComponent => // ...
Но TSLint жалуется на все, что происходит после второго |
(такв основном об обеих функциях).
В нем говорится:
[ts] Type expected. [1110]
для ()
,
[ts] ',' expected. [1005]
для =>
и
[ts] 'string' only refers to a type, but is being used as a value here. [2693]
[tslint] Forbidden bitwise operation [no-bitwise]
для string
/ number
соответственно.
Как мне сказать TypeScript, что такое value
?