🦜
теперь это promise
теперь тебе надо сделать .then(({data}) => data)
Frontend Priest
это все еще promise
Ты явно очень много не понимаешь. Перечитай доку реакта и learn.javascript.ru, потом задавай вопросы. Частное решение конкретной проблемы не даст тебе её понимания
Vladimir
render() { return ( <AxiosComponent url={someURL} params={someParams}> {(data) => { // some code }} </AxiosComponent> ); } class AxiosComponent extends React.Component { componentDidMount() { //делаешь запрос, сохраняешь в стейт } render() { return this.props.children(this.state.data); } }
Vladimir
Это в общих чертах
🦜
бляяяя, AxiosComponent, в рендере запрос делать
🦜
уже с утра нужно глаза святой водой промывать
Looch
Дэн же благословил
Looch
Уже можно
Looch
Просто не так как этот чел
Frontend Priest
не даст но даст понимание работы с axios
Какой тебе аксиос, если ты не знаешь асинхронность и компоненты
Александр
бляяяя, AxiosComponent, в рендере запрос делать
Почему в рендере? В лайфсайкле
Vladimir
Looch
Вон есть прекрасный компонент <Redirect />
Vladimir
все
что, все, конкретно , что
Looch
Тоже прекрасный подход
Looch
что, все, конкретно , что
Разделение ответсвенности
Looch
Есть такое понятием
Looch
Погугли
Александр
короче, как просто сделать так чтобы эта функции возвращала объект с данными
Невозможно, данные приходят асинхронно, вернуть их из функции принципиально невозможно тут
Vladimir
человк спросил, ка сделать компонент который внутри делает аксиос, вот компонент который внутри работает с аксиос
🦜
что, все, конкретно , что
ajax запихнут в компонент, вызов в рендере
Vladimir
Погугли
Умники, понаехали, сидели в тряпку молчали, потом увидели код и возбудились, ок, напишите лучше
Frontend Priest
что, все, конкретно , что
Не смешивай вью со стейтом и логикой так нагло
Looch
Но вы реально зря чела ругаете, Дэн же показал как с Suspense и Concurrent mode делать прям из рендера
Paul
Покажите код что ли
Paul
А то чет аж интересно стало
Vladimir
Да твой код очень возбуждает
напиши лучше, покажи, научи
Looch
Там запрос не в рендере все равно
Ну +- там просто оно ждет промис в рендере
Александр
В рендере данные синхронно из кеша берутся и если их нет то кидают промис
artalar
что конкретно тут не так?
https://youtu.be/rVFW009olAI?t=1899 Или тут http://blog.csssr.ru/2019/05/26/semantics-in-programming
Tumen
то есть я правильно понимаю что используя axios нужно только setState для сохранения данных?
Looch
Этот код не надо писать, это фундаментально плохая идея
Я выше написал что нет, и что это б у д у щ е е
Vladimir
человек, задал конкретный вопрос, вы никто даже и близко не дали ответа на его вопрос, но при это горазды поливать говнами чужой код, ок
🦜
практики в реакте, практики ajax
🦜
практики организации кода
Vladimir
Tumen
да потому что год говно. Он просто все адекватные практики нарушает
так я изначально спросил можно ли сделать так чтобы axios внутри функции данные возвращал
Александр
Looch
Не ждёт он ничего в рендере
Сейчас я тебе покажу !
Tumen
да потому что год говно. Он просто все адекватные практики нарушает
можно было написать что правильнее для данных использовать setState
artalar
человек, задал конкретный вопрос, вы никто даже и близко не дали ответа на его вопрос, но при это горазды поливать говнами чужой код, ок
Вопрос изначально странно был поставлен и, скорее всего, решал не ту проблему которую следовало бы
Александр
Сейчас я тебе покажу !
Как данные прихотя то компонент перерендеривается с данными уже, это не тоже самое что и «ждёт»
Looch
смотри что я умею https://codesandbox.io/s/0qnq8r25pn !
Александр
Сейчас я тебе покажу !
Я видел, не надо
Looch
ProductsList
Looch
import React from 'react' import useFetch from 'fetch-suspense' const url = 'https://api.myjson.com/bins/l5qhi' export const ProductsList = () => { const products = useFetch(url) return ( <div> {JSON.parse(products).map(product => ( <div key={product.id}>{product.name}</div> ))} </div> ) }
Looch
как тебе такое Илон
Александр
Ну и где тут запрос в рендере
Александр
И кто тут ждёт в рендере
Александр
Внутри посмотрите как реализовано это
Looch
Ну и где тут запрос в рендере
Это функциональный компонент, там все тело это рендер
Александр
Ладно, не буду продолжать спор, если вам интересно будет разобраться то всегда можете реализацию глянуть
Tumen
На этот вопрос не нужно давать ответ. Твой код - медвежья услуга
это спорный момент можно сколько угодно читать доку но есть разница между знать и уметь а я вот щас спросил и конкретно понял, что лучше работа я с axios использовать setState
Tumen
Это - не спорный момент, ты просто не знаешь базисы реакта и асинхронности в жс
что лучше: дать человеку книгу, на читай, или сказать что твоя реализация не лучший вариант и тут следует по другому делать
urazem
Всем привет, прошу простить за возможно столь глупый вопрос, но может ли кто-то объянить что такое замокапленный список?))
Tumen
я вот по курсу прошелся https://habr.com/ru/company/ruvds/blog/432636/ но хотелось бы дальше что то изучать,есть какие курсы или статьи?
Sergey
Окей, в сб заведу
Пинай меня тоже
Tumen
А доку читали официальную?
хотелось бы именно что то с практикой
focus
всю нет
https://ru.react.js.org
Александр
хотелось бы именно что то с практикой
На работу устроится - норм практика будет, других нет вариантов
focus
лучше прочитай