деструктурированный параметр отображения типов с типом дает ошибку - PullRequest
0 голосов
/ 27 мая 2019

Допустим, у меня есть следующий объект

const a = {
   history: string[]
}

Теперь я пытаюсь присвоить историю, используя другую переменную historyMapped, также давая тип объекта (string []).

const { history: mappedCareerHistory }: { mappedCarerHistory: string[] } = a;

Однако я получаю следующую ошибку здесь

свойство mappedHistory отсутствует в типе .....

Если я просто удаляю тип и затем включаюпосле этого работает без проблемы компиляции

const { history: mappedCareerHistory } = a;

1 Ответ

0 голосов
/ 27 мая 2019

это потому что вы разворачиваете объект, не меняя ключ.

Для Ex

let a = {history:['1','2']};
const {history: mappedCareerHistory} = a;
console.log(mappedCareerHistory); // ["1", "2"];    

Вы не меняете ключ объекта, который вы разворачиваете, поэтому компилятор выдает ошибки. поэтому тип должен быть строковым массивом, а не отображаемым типом объекта.

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