IDONTSUDO
@IDONTSUDO
ЧСВ программистов идет в комплекте с первой IDE.

TypeScript типизация рантайм?

static CreateChapter(){
      rpc.callServer('createCharacter',auth.name).then((response) =>{
          if(response){
              // ANY code
          }
      })
  }


У меня есть такой код. Где any это какая то логика которая идет на основе того что в объекте responce что то содержится. Там я пишу проверку на существование каких либо свойств. Я знаю что TS не может в типизацию в рантайме. Но вопрос в том, могу ли я как то типизировать свои ответы сервера с помощью, интерфейсов которые были описаны до этого?

То есть такую логику примерно я бы хотел видить.

if(keyof IcreateCharacter)
  • Вопрос задан
  • 228 просмотров
Решения вопроса 2
IDONTSUDO
@IDONTSUDO Автор вопроса
ЧСВ программистов идет в комплекте с первой IDE.
@abberati
frontend-разработчик
Есть библиотеки для этих нужд. Но можно и руками проверки написать — в документации тайпскрипта в разделе advanced написано как.

Я у себя использую для этого библиотеку yup. Описываю схемы данных, прогоняю сырые данные через scheme.validate и, если валидация прошла успешно, то нетипизированный ответ от бака превращается в структуру, соответствующую типу схемы. Ну и сами типы я руками не описываю, вывожу из схемы через type Foo = InferType
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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