Bogdan
у реакт модалки пропс closeTimeoutMS для красоты типо?
Dima
Я знаю, как работает реакт и такого быть не должно
Если произойдёт изменение в компоненте App, перерендерятся все дочерние
Bogdan
подскажите, можно ли на портал навесить анимацию? именно анимацию при размонтировании
Dima
по умолчанию
Ты про PureComponent?
Ivan
Ребят, почему сейчас create-react-app использует такую структуру через функцию с большой буквы, без рендер метода? В курсах год назад использовали классы и render().
Zaff
content ? return(li > content) : null
Dima
ещё memo
Еще можно ключи спискам добавлять, что сильно улучшит производилтельность какой-нибудь таблицы или ленты
Zaff
Перед тем, как мапить контент во вью, проверяй не нулл ли он Я с телефона
Daniil
Ничего не рендерит !== ошибка
Zaff
Ну крч надо проверить не пустой ли он
Roman
Там не массив
Dima
Ребят, почему сейчас create-react-app использует такую структуру через функцию с большой буквы, без рендер метода? В курсах год назад использовали классы и render().
Если твоему компоненту не нужно состояние и жизненный цикл - используй обычные функции. Компонент будет быстрее загружаться.
Daniil
content в стейте как массив, если он использует другой тип данных потом, то вот и проблема
Daniil
И что делать?
Соблюдать один тип данных, а не пороть проверки которые исходят из того, что ты играешься с типами данных
Zaff
тогглить стейт после загрузки?
Roman
https://codesandbox.io/s/wizardly-resonance-1u2gf
Aleksey
ребят, я решил задачу, в которой при наличии массива в переменной coodrs я отрисовываю свойство state. Работает только если консоль лог стоит в выражении. как можно красивее переписать выражение? через && не получается. бьёт ошибку. И на что consol.log можно поменять? если поставить null - не пашет
Aleksey
Map - компонент из 'react-yandex-maps’
Roman
{"content":[{"id":1,"name":"Java"},{"id":2,"name":"Go"}],"pageable":{"sort":{"sorted":false,"unsorted":true,"empty":true},"offset":0,"pageSize":10,"pageNumber":0,"unpaged":false,"paged":true},"totalPages":1,"totalElements":2,"last":true,"number":0,"size":10,"sort":{"sorted":false,"unsorted":true,"empty":true},"first":true,"numberOfElements":2,"empty":false} Ты передаешь в content -> content, а нужно content -> content.content
Roman
Суровое русскоговорящее сообщество :))))))))))))))))))))))))))))))
Zaff
Смотри, вариант. В стейте будет isLoading: true. После того как в content сохранишь то, что пришло, меняешь значение isLoading на false А там, где ты ты рендеришь, поставь if (isLoading) return content.map else return null
Daniil
Да зачем ему это. Он говорит что не-при-хо-ди-т
Daniil
к чему ты тут ему прелоадер навязываешь?
Zaff
Да зачем ему это. Он говорит что не-при-хо-ди-т
Хм. Тогда хз. Может из-за Корс не приходить
Daniil
В песочницу выложи. Щас идет гадание
Daniil
Где? pastebin это не песочница
Daniil
как я его код там запущу? Или уже можно?)
Daniil
this.setState({ content: content.content })
Daniil
ох уж этот нейминг, но ладно
Daniil
Пришли там структуру твоего ответа в then
Daniil
А что по-твоему там должно быть? Ты просто так аргумент свой назвал, это еще не значит что там твой массив контент
Ivan
Ребят, почему сейчас create-react-app использует такую структуру через функцию с большой буквы, без рендер метода? В курсах год назад использовали классы и render().
Daniil
console.log(content) сюда ебни
Daniil
и покажи
Dima
вроде слышал, что они одинаковые по загрузке
Для загрузки классового компонента конструктору нужно создать методы жизненного цикла и вызывать каждый, их штук 10) при каждом обновлении компонента. Все это явно будет работать медленее чем обычные функции, если представим что у тебя сайт как фейсбук.
Aleksey
ребят, я решил задачу, в которой при наличии массива в переменной coodrs я отрисовываю свойство state. Работает только если консоль лог стоит в выражении. как можно красивее переписать выражение? через && не получается. бьёт ошибку. И на что consol.log можно поменять? если поставить null - не пашет Map - компонент из 'react-yandex-maps’
Daniil
Что значит ничего не показывает?
Daniil
Тогда, console.log(res)
Roman
Значит, нету ответа от сервера -> Нету setState -> Нету ререндера приложения -> Ничего нету :)))
Daniil
+
Daniil
Да в браузере смотри ты
Roman
Это фронтчасть твоего приложения Сервер на 8080 порту :/
Daniil
Почему ты сразу не посмотрел туда?)
Eugene
классика
Roman
CORS ><
Roman
Chrome запрещает твой запрос. Инфо о том, как разрешить CORS -> https://enable-cors.org/
Daniil
http://cors-anywhere.herokuapp.com/ можно вообще пойти "опытным" путем и это перед запросом ебнуть 🌚
Eugene
в вебпаке проксю можно сделать
Aleksey
ребят, подскажите что подставить в Тернарный оператор вместо console.log чтобы выражение работало) null если подставить - не пшет
Dima
у тебя express js сервер?
Roman
Можно и на фронте посылать запросы через proxy. Читай сообщение модератора, но НЕ ИСПОЛЬЗУЙ ЭТОТ прокси для продакшена... Но лучше на беке...
Dima
Политика корс запрещает запросы с одного сервера на другой, тебе нужно вручную это разрешить.
Roman
https://www.google.com/search?q=chrome+allow+cors
Roman
https://reactjs.org/docs/lists-and-keys.html
Dima
Не обращай внимание на ошибку ключа, это для оптимизации загрузки компонентов
Dima
Ключи нужны реакту для того, чтобы он не перерисовывал списки. Когда ты маппишь, родительскому элементу добавь key, значение в нем должно быть уникальным и не изменяться.
Roman
{this.state.content.map(skill => <li>{skill.name}</li>)} измени на {this.state.content.map(skill => <li key={skill.name}>{skill.name}</li>)} ОШИБОК НЕ БУДЕТ до того времени, пока skill.name уникальный. НЕ ИСПОЛЬЗУЙ ТАКОЙ КОД НА ПРОДАКШЕНЕ. Прочитай документацию React.JS (для начала)
Dima
{this.state.content.map((skill, i) => <li key={skill.name}>{i} {skill.name}</li>)} можно просто выводить итератор вторым аргументом
Maxim
пасаны у меня что сильно глупый вопрос? что никто не отвечает)))
вместо тернарки И не подходит? coords && { ... }
Aleksey
state={coords && {object}} где object - твой объект
в том то и дело!!! что эта херня не пашет) я сам пробовал
Aleksey
PH_cheerokee
Да, нужно просто хранить где-то загруженные айтемы, если ты хочешь сохранять состояние страницы с инфинит скроллом после возврата
а мне нужно занулять массив,когда я ухожу с этой страницы? или когда я перехожу обратно так и показывать все 300 айтемов?
Aleksey
вот это
Aleksey
очень странно конечно что && не подходит . а тернарный подходит. ладно пофиг. что поставить вместо консоль лог?)) чтобы с тернарным норм смотрелось
Aleksey
Пустой обьект
не помогает
Aleksey
пустой объект
не помогает)