Предварительная выборка Nextjs <Link> возвращает 404

Я создал приложение Nextjs, которое использует динамическую маршрутизацию, и замечаю странное поведение с предварительной выборкой.

Иногда (обычно после перестройки, но не всегда) мое приложение начинает возвращать 404 для всех предварительных выборок на данной странице. Если я перейду по ссылке, загружается следующая страница, но снова все предварительные выборки на этой странице начинаются с 404. Эта проблема исчезнет после обновления страницы несколько раз, но это не всегда согласованно.

Кажется, что перерывы происходят исключительно на моих динамических маршрутах с использованием getStaticProps и повторной проверки содержимого каждую секунду. Ниже приведен пример того, как я структурировал свою ссылку, а не имя поездки будет динамическим значением.

               <Link href={`/trip/${tripname)}`}>
            <a>
                <Card className={classes.tripCardRoot} />
            </a>
         </Link>

Вот что происходит, когда страница загружается

1 ответ

У меня была точно такая же проблема ... Через 2 дня проб / ошибок я наконец нашел решение. Но это не лучшее решение IMO.

Я обновил все свои <Link /> компоненты из next/link и отключил prefetchвариант. После этого изменения я больше не вижу ошибок 404 на вкладке сети dev-tools. Все GET-запросы для предварительно сгенерированных данных JSON теперь будут выполняться только при наведении курсора, и волшебным образом они не приводят к 404...

Я знаю, что это не лучшее решение, но, по крайней мере, проблема исчезла ... Надеюсь, кто-нибудь ответит лучшим решением!

Другие вопросы по тегам