Я пытаюсь перестроить свой сайт CRA с помощью Next JS, и я немного застрял на этой странице :
Средний контейнер состоит из 3 частей:
- Список букв (без проблем)
- Список index (только 1 выборка для получения списка)
- Описание выбранного индекса (этот изменяются каждый раз, когда пользователь выбирает новый индекс в списке)
Он отлично работает с CRA. Итак, с помощью Next JS я сделал следующее: список index имеет для каждого элемента индекса компонент ссылки, например: "https://www.phidbac.fr/Liste-des-index/50"
,
и файл [id]. js в страницах / папка Liste-des-index:
// извлечение списка и описания при каждом новом выборе
const Indexes = ({ listeIndex, cours, id }) => {
return (
<>
<Layout>
<PageIndex listeIndex={listeIndex} id={id} cours={cours} />
</Layout>
</>
);
};
export default Indexes;
Indexes.getInitialProps = async ({ req }) => {
// Get the correct ID Description from URL
let id = req.url;
id = id.split("/")[2];
const res = await fetch("https://www.phidbac.fr:4000/Indexes");
const dataList = await res.json();
const res1 = await fetch(`https://www.phidbac.fr:4000/Indexes/${id}`);
const dataDescription = await res1.json();
return {
listeIndex: dataList,
cours: dataDescription,
id: id
};
};
Это работает, но эта страница выполняет полную перезагрузку при каждом нажатии, поэтому это медленное и явно не хорошее решение.
Github Repository
Как мне добиться что-то такое же гладкое, как в версии CRA?
Спасибо за помощь: D
РЕДАКТИРОВАТЬ:
На этом снимке экрана вы видите задержку между щелчком и загрузкой страницы и контейнер прокрутки возвращается в начало.
![Example](https://i.stack.imgur.com/wRG5Y.gif)
Я просто пытаюсь не обновлять sh список индексов при каждом нажатии и просто измените описание с правой стороны.
Я отредактировал git с вашим решением, если вы хотите попробовать.
Еще раз спасибо:)