Нужно сначала сделать запрос на сервер с помощью ajax, дождаться результата, после чего отрисовать страницу на основе полученных данных. Как можно реализовать?
сначала сделать запрос <...> после чего отрисовать страницу
Нет, это делается не так. Страница отрисовывается сразу. Пока данных нет - демонстрируется индикатор загрузки; после выполнения запроса индикатор скрывается, данные показываются (см. условный рендеринг). Например.