@Makcimka

Как в typeScript проверить значения на undefined в объекте?

Есть такой объект который приходит по запросу:
const videoInfo: {
    id_video: string | undefined;
    title: string | undefined;
    thumbnails: string | undefined;
    publishedAt: string | undefined;
    channelId: string | undefined;
    viewCount: string | undefined;
    commentCount: string;
}

Из этого объекта мне надо сделать новый в котором пришли все данные в виде строки.
Как правильно проверить на undefined каждое значение и в случае его присутствия выбросить ошибку
  • Вопрос задан
  • 103 просмотра
Решения вопроса 1
Используйте asserts (описание в release notes 3.7):
function assertNotPartial<T>(entry: Partial<T>): asserts entry is Required<T> {
  if (Object.values(entry).every((value) => value !== undefined)) {
    return;
  }

  throw Error('YOUR ERROR MESSAGE');
}

и тогда используете следующим образом:
assertNotPartial(videoInfo);

console.log(videoInfo); // Тут не будет в типе undefined'ов
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы