Проблема в следующем - есть React-приложения, у которого есть какие-то компоненты с шаблоном для вывода данных. У меня созревает лишь один вопрос - как верно выводить данные из базы данных? Я понимаю, что React - Front-End фреймворк и таким заниматься он не умеет, но и подступиться к нему очень и очень сложно. Я нашел решение - отправляю AJAX-запрос к тому же Django (это сейчас не важно), получаю от него данные из базы, отдаю в state React-Component и получаю, в принципе, результат. Такое решение я нашел без использования WebPack и я думаю, что при определенном колдовстве я смогу связать это применив модуль http у Node, но тогда выходит еще больший гибрид - React+Node+Любой серверный язык (мутант какой-то).
Как вернее выводить данные в мое приложение? Правильно я делаю, используя AJAX-запрос для вывода информации из БД сервера? Кто подскажет? Нашел какую-то кашу в виде REST на Django + React, но это такой мусор, что мое решение выглядит приятнее) А как тогда иначе получать данные в React и делать это правильно? С React дружу хорошо и его архитектуру понимаю, а вот сейчас встал на стыке "нужно соединить front-end с сервером" и не понимаю куда копать)
Dmitry Bay, ну не буду о Node.JS, так как там ясно как получить данные. Как быть, если речь идет о PHP или Python? Google использует Python/C# с Angular (знают, что другой фреймворк, но сути не меняет). Как они это делают? Честно, я много чего пересмотрел (а также видел как laravel преподносит уже готовое API с Vue), но ответа найти развернутого не могу - как React правильнее связать с любым другим языком программирование, если нужно?
1. На сервере это будет любой json api.
Алгоритм следующий: сервер получает запрос в api, получает и обрабатывает данные из БД, потом отдаёт в ответ на запрос. В зависимости от языка будут различия в имплементации, но везде найдутся библиотеки.
2. На клиенте нужно хранилище данных (store) (можно и без него обойтись, просто прокидывая результаты запросов в компоненты, но в больших приложениях слишком усложняется управление данными. Есть redux, есть mobx, есть ещё куча разных решений.
Алгоритм такой: компонент при рендере понимает, что ему нужны данные и идёт в store, там данные, если их нет, подгружаются по ajax. При обновлении данных в store компонент получает уведомление и совершает ререндер.