Как определить тип строки | число? - PullRequest
1 голос
/ 07 мая 2020

У меня есть функция карты, а тип параметра моей функции - это массив строк или чисел. Я определяю его как:

(param: (string | number)[]) => ...

, но я хочу сделать его красивее:

(param: StringOrNumber)[]) => ...

, так как я использую этот параметр во многих функциях и обнаружил, что конвейер в середине уменьшается читаемость. Есть ли способ сделать это по умолчанию в Typescript или мне нужно определить для этого пользовательский тип?

Ответы [ 2 ]

2 голосов
/ 07 мая 2020

Для этого вам необходимо определить собственный тип, например type StringOrNumber = string | number. Однако, если вы включаете настраиваемый тип, такой как этот, в файл объявления (например, в файл с именем types.d.ts, где суффикс .d.ts указывает компилятору TypeScript, что это файл объявления) где-нибудь в вашем проекте, тогда этот тип будет глобально доступен в других файлах вашего проекта.

Я бы порекомендовал прочитать здесь файлы деклараций, хотя это не очень понятно. https://www.typescriptlang.org/v2/docs/handbook/declaration-files/introduction.html

0 голосов
/ 07 мая 2020

вам нужно определить новый тип и использовать его везде, это совершенно нормально, или вы можете использовать Array<string | number>, что более читабельно IMO.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...