Size: a a a

Next.js — русскоговорящее сообщество

2020 March 27

in Next.js — русскоговорящее сообщество
Svyat Perynsky
да.. перепутал.. уже вижу :)  это тебе ещё +1 см к самооценке и ещё одно подтверждение... что я очень глупый )
что?
источник

KS

Konstantin Surkin in Next.js — русскоговорящее сообщество
вопрос в том, что на клиенте браузер на момент пока не получил данные показывает белое полотно и только потом загружает страницу
источник

KS

Konstantin Surkin in Next.js — русскоговорящее сообщество
Переслано от
читайте доку. Если Запрос данных делать на страницах именно на  PAGES, то юзэффект не нужен никакой. getInitialProps (далее gip) отрабатывает при роутинге (любом, будь то серверный или клиентский, он для того мать его и создан)
источник

in Next.js — русскоговорящее сообщество
Konstantin Surkin
вопрос в том, что на клиенте браузер на момент пока не получил данные показывает белое полотно и только потом загружает страницу
ну конечно, а как ты хотел? моментальной загрузки по щучьему велению? анимацию прикрути, спиннер какой красивый
источник

in Next.js — русскоговорящее сообщество
isLoading, hasErrored - это же просто базовые штуки, не важно что там у вас - редакс, эффектор, контекст
источник

in Next.js — русскоговорящее сообщество
вот у тебя есть страница с 1000 товарами. Как некст должен предугадать на какой товар ты нажмешь через 2 секунды? какие данные загрузить заранее? все 1000?))))
источник

SP

Svyat Perynsky in Next.js — русскоговорящее сообщество
почему первый рендер пустой?
источник

🦜

🦜 in Next.js — русскоговорящее сообщество
Konstantin Surkin
Всем привет. Пилю сайт по поиску работы с личным кабинетом. Интересует вопрос кэширования данных. При первой загрузке страницы срабатывает ssr и через getInitialProps я получаю данные с сервера и отправляю как пропсы на страницу. В getInitialProps данные получаются, только если мы на сервере (стоит проверка window undefined). При клиентском рендеринге я получаю данные через useEffect. Однако если посудить логично, то допустим мы сейчас на главной странице и решили перейти на одну из внутренних, а потом вернуться на главную, то запросы полетят заново и на это время контент будет в стадии загрузки, однако мы ведь получили контент ранее, можно его как то кэшировать и насколькл это актуально?
Роутер некста надо использовать, тогда при клиентской навигации не будет заново рендерится страница
источник

in Next.js — русскоговорящее сообщество
конечно же заходя на страницу с товаром ты говоришь серверу - дай мне вот этот товар, но поскольку у тебя уже клиентский роутинг - то для пользователя эта операция бесшовная, но она по-прежнему асинхронная, это значит что с момента когда пользователь нажал на товар до момента когда данные по товары загрузились и отрендерелись прошло не мгновение, а некотоое время, задержка сети, бд и тд. Вот эту задержку маскируют лоудером(спиннером) или анимацией
источник

in Next.js — русскоговорящее сообщество
Svyat Perynsky
почему первый рендер пустой?
А в серверной консоли что-то есть?
источник

SP

Svyat Perynsky in Next.js — русскоговорящее сообщество
А в серверной консоли что-то есть?
тот самый ноль
источник

in Next.js — русскоговорящее сообщество
Svyat Perynsky
тот самый ноль
покажешь?)
источник

KS

Konstantin Surkin in Next.js — русскоговорящее сообщество
Дк я и говорю, что для этого в gip поставил проверку, что если находимся на стороне сервера, то шлем запросы (на клиенте считайте gip моментом выполняется и показывает страницу), а в компонента страницы в useEffect получаем данные и прокидываем как пропсы. Следовательно при клиентской навигации страница моментов отображается с интерфейсом, но на некоторых блоках стоит загрузчик
источник

SP

Svyat Perynsky in Next.js — русскоговорящее сообщество
покажешь?)
источник

KS

Konstantin Surkin in Next.js — русскоговорящее сообщество
Имеете ввиду userouter без next/link?
источник

KS

Konstantin Surkin in Next.js — русскоговорящее сообщество
Роутер некста надо использовать, тогда при клиентской навигации не будет заново рендерится страница
источник

in Next.js — русскоговорящее сообщество
Konstantin Surkin
Дк я и говорю, что для этого в gip поставил проверку, что если находимся на стороне сервера, то шлем запросы (на клиенте считайте gip моментом выполняется и показывает страницу), а в компонента страницы в useEffect получаем данные и прокидываем как пропсы. Следовательно при клиентской навигации страница моментов отображается с интерфейсом, но на некоторых блоках стоит загрузчик
ну тогда собственно вопрос нахера тебе SSR если ты все авно все на клиенте запрашиваешь?
источник

KS

Konstantin Surkin in Next.js — русскоговорящее сообщество
Ssr чисто для seo, хотелось бы первоначальные данные с ssr как-то кэшировать и при клиентском рендеринге их выводить, пытался прикрутить swr, не совсем получилось
источник

in Next.js — русскоговорящее сообщество
Konstantin Surkin
Ssr чисто для seo, хотелось бы первоначальные данные с ssr как-то кэшировать и при клиентском рендеринге их выводить, пытался прикрутить swr, не совсем получилось
короче, тебе не нужен useEffect для запроса данных, тебе не нужна проверка на window в gip
источник

KS

Konstantin Surkin in Next.js — русскоговорящее сообщество
А что нужно?)))))
источник