как отправить данные из express.js, чтобы реагировать без API? - PullRequest
0 голосов
/ 30 декабря 2018

Я хочу создать многостраничное приложение, использующее реагирование и экспресс.

Я не понимаю, как извлечь данные, отправленные экспрессом, в реакцию без использования API.

Интересно, сможет ли реагировать получить данные, хранящиеся в html-реквизитах, отправленных Express?может быть, этот вопрос немного странныйна самом деле я никогда не создавал веб-сайт только с экспрессом.Я всегда использую реакцию и извлекаю данные через API и создаю одностраничное приложение.

есть ли способ сделать это?

Ответы [ 3 ]

0 голосов
/ 30 декабря 2018

I wonder if react can retrieve the data stored in html props sent by express?

Да, это возможно.Я не уверен, что вы подразумеваете под "html props", но вы можете сохранить необходимые данные в качестве атрибутов данных при отправке обратно html во внешний интерфейс, а затем вытащить их из DOM следующим образом (https://developer.mozilla.org/en-US/docs/Learn/HTML/Howto/Use_data_attributes).

В зависимости от того, как вы планируете использовать его, вы можете просто извлечь эти данные для одноразового использования или перенести их в ваше состояние.

0 голосов
/ 30 декабря 2018

Первый способ, которым я мог бы подумать, это использовать параметры в URL.

Например, если на вашем веб-сайте есть URL-адрес типа http://localhost/, и вы будете использовать URL-адрес http://localhost/api/data? для получения данных из экспресс.js.

Затем в вашем express.js после получения запроса от вашей реакции вы можете использовать:

res.redirect (http://localhost/api/${encodeURIComponent(JSON.stringify(data))})

, где res - этообъект ответа и data - это данные, которые вы хотите отправить в данные, которые, как предполагается, являются объектами.

В вашем react вы можете получить свои данные, выполнив следующие шаги: - реализоватькомпонента и установите /api/data? в качестве маршрута этого компонента; - в компоненте получите данные как JSON.parse(decodeURIComponent(this.props.match.params.data))

0 голосов
/ 30 декабря 2018

React и express играют две разные роли.Реагировать Ваш фронтэнд.Экспресс это бэкэнд.Это логически разделенные слои.Предпочтительный способ загрузки данных из бэкэнда в веб-интерфейс - через вызовы API.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...