169 похожих чатов

Всем привет, вот такая ошибка возникла при типизации аксиос респонса,

как можно решить?

26 ответов

21 просмотр

setUser ожидает получить данные в любом случае, а передаются они не в любом случае, а только если res существует

я мог ступить с кодом, но суть я надеюсь, ты понял

Кажется, AxiosResponse<T> хранит T в поле data. Если так, то res?.data?.data решит проблему, но это не точно

что? как это?...

export interface AxiosResponse<T = any> { data: T; status: number; statusText: string; headers: any; config: AxiosRequestConfig; request?: any; }

Иван-Залевский Автор вопроса

я что то неправильно понял

да посмотри что он в типах выводит для начала

я вообще не понял, что ты тут сделал (x перепиши так: typeof res.data === typeof Parameters<setAvatar>[0] && dispatch (дальше ты знаешь)

if (res) { dispatch...(res.data) }

так не пойдет ? )

нет, TS не знает какой тип у data, вот и ругается вообще, у data тип наверное, просто any

мне казалось что он ругается потому что data, как и res может не быть вовсе... видимо я что-то упустил )

ты не лжёшь на это он тоже ругается

Иван-Залевский Автор вопроса

стоп, я в другую функцию залез, проблема в другой была. Проблема то в том что у меня у даты тип AxiosResponse<string>, а нужен просто string

Иван-Залевский Автор вопроса

даже если я делаю проверку на наличие data все равно ругается

Сделай, плиз, res?.data?.data, а то я спать спокойно не смогу))

Иван-Залевский Автор вопроса

не string а AxiosResponse<userType>

Иван-Залевский Автор вопроса

ничего не понял, но ошибка пропала. Теперь оно б еще работало хорошо

Иван-Залевский Автор вопроса

спасибо

что за магия

в res лежит тип { data?: AxiosResponse<userType>; error: AxiosError; } а setUser требует userType Интерфейс AxiosResponse<T> я уже показывал, он библиотечный. Чтобы нормальную дату достать из res надо res?.data?.data сделать)

это же с сервера всё возвращается, откуда там достался то, что принимает setUser? или... typeof data.data === any

Да ну в сообщении об ошибке всё написано же. Типа хочу userType, а ты мне дал AxiosResponse<userType>, а ведь он никак-никак не userType, в нём даже нет username, email....

а.... а ты прав. Теперь допёр там ещё писалось, что он generic принимает

ага-ага ((x слушай, у меня беда с moduleResolution, я вообще допереть не могу, как он работает, делов там на минут. Поможешь?

Так ну пиши сюда, nometa, все дела) Не я помогу, так кто другой. А третий прочитает решение и ему пригодится

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

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта