Запрет сравнения TypeScript с неверным значением в списке возможных типов - PullRequest
0 голосов
/ 18 июня 2019

Я создаю некоторый код, который взаимодействует с модулем и имеет несколько типов, которые являются более конкретными, чем позволяет модуль, но все еще полностью совместимы с типами, указанными модулем.

Однако, несмотря на совместимостьЯ получаю эту ошибку:

  Types of property 'data' are incompatible.
    Type 'IDataPoint[]' is not assignable to type 'number[] | { x: any; y: any; }[] | [number, number][] | [number, number[]][]'.
      Type 'IDataPoint[]' is not assignable to type 'number[]'.
        Type 'IDataPoint' is not assignable to type 'number'.
          Type '[number, number]' is not assignable to type 'number'.ts(2322)

Примечательно, что в последней строке написано "Type '[number, number]' is not assignable to type 'number'", хотя [number, number] находится в исходном спискедопустимых типов.Почему просто сравнивать с первым вариантом и сдаваться?Есть ли способ заставить это работать без приведения значения к нужному типу?

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