@dc65k

Как правильно определить опциональный тип?

Все привет, есть следующий пример:
let object: Record<string, string> & { field?: boolean } = {
  s: 's',
//   field: true,
};

// object.s = 'true';
object.s2 = 'string2';
object.s3 = 'false';
object.field = true;

Задача следующая, у всех свойств объекта значение строковое, но у опционального свойства field должно быть boolean.
Если в примере выше раскомментировать (сразу же создаём объект со свойством field):
// field: true,
то будет ошибка.
Как реализовать данную задачу?
  • Вопрос задан
  • 34 просмотра
Решения вопроса 1
let object: Record<string, string | boolean | undefined> & { field?: boolean } = {
  s: 's',
  field: true,
};

Но вообще код попахивает. Что-то вы делаете не так.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы