Интегрируйте приложение Next в веб-сайт, сгенерированный PHP

У меня есть приложение Next JS 14, которое по сути представляет собой корзину для покупок. Я создаю приложение с помощью output: 'export' в файле next.config.mjs. Как я могу добавить это на существующий веб-сайт (сгенерированный PHP), чтобы он с ним не путался. Я пытался включить (или даже повторить содержимое) файл index.html, созданный Next, на веб-сайте PHP, но как только файлы JS загружаются, они занимают весь экран. (Существующий веб-сайт, сгенерированный PHP, имеет боковую панель и панель навигации, и я хочу, чтобы код, сгенерированный Next JS, отображался в качестве содержимого).

Вы рассматривали возможность использования iframe?

halonico 01.07.2024 08:51

@halonico пытается избежать такого подхода.

Jay 01.07.2024 09:12
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
1
2
60
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Основная цель Next.js — обеспечить рендеринг на стороне сервера для приложений React (а также генерацию статического сайта, как в вашем случае). Это означает, что Next ожидает полного контроля над рендерингом страниц, а это не то, что вам нужно.

Итак, чтобы добавить компоненты Next.js/React на страницу, отображаемую PHP, я предлагаю следующие решения:

  1. Использование iframe. Таким образом, вы можете постепенно вставлять страницы Next.js в свое приложение (однако Джей старается избегать такого подхода).
  2. Полностью перенесите пользовательский интерфейс на Next.js. Таким образом, ваши страницы генерируются Next.js и могут взаимодействовать с серверной частью PHP через конечные точки API.
  3. Просто используйте React без Next.js. Вы можете использовать React для генерации статики и включения ее в свое PHP-приложение, как вы это сделали с Next static. Если у вас несколько страниц (или просто разные компоненты), вы можете создать отдельные точки входа в конфигурации вашего веб-пакета для каждой страницы/компонента и указать, где их монтировать, с помощью createRoot.

Кроме того, если вы используете другую платформу внешнего интерфейса для рендеринга остальной части страницы (Angular, Vue и т. д.), рассмотрите возможность использования архитектуры микроинтерфейса.

Спасибо, Владислав. Меня подвел третий.

Jay 02.07.2024 12:45

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