¿Cómo se conecta su aplicación React a un backend, por ejemplo: (Node + Express + Postgres)?

De la manera que quieras. Como estás preguntando, asumiré que algunos ejemplos están en orden. La forma más sencilla sería tener un punto final que sea HTTP o HTTPS que devuelva JSON. Algunos JavaScript crean una XMLHttpRequest (también conocida como AJAX) o una búsqueda (si solo le interesa trabajar con navegadores que lo admitan o si utiliza un respaldo de tiempo de ejecución o un polyfill para navegadores más antiguos). Cuando se devuelve la solicitud de datos, el JavaScript puede tomar la respuesta JSON y pasarla a una vista / componente React como un `prop` y la vista puede representarlo.

Entonces, con Node + Express + PostgreSQL, esperaría que estuvieras haciendo muchos puntos finales JSON. Quizás usando REST o quizás usando GraphQL o Falcor. El enfoque con los puntos finales REST requiere que cada vez que desee cambiar los datos que está obteniendo, es probable que tenga que ir al back-end y modificar el código del lado del servidor. Con GraphQL y Falcor, el cliente tiene más control sobre la solicitud. El cambio puede requerir una modificación del lado del servidor, pero a menudo no lo haría. Esa es una razón para considerarlos. Otra es que le da al desarrollador en la interfaz más flexibilidad. Si algún tipo de datos en particular tarda un tiempo en recuperarse, el desarrollador puede optar por hacer dos solicitudes de datos: una para los datos rápidos y otra para los lentos. De esa manera, los datos rápidos se pueden representar y el sitio se sentirá más receptivo.

Si prefiere seguir con REST, podría considerar usar restify o proyectos similares que ofrezcan un poco más de marco en torno a esa necesidad específica.

Pero el panorama general es que JavaScript solicita datos del backend y los procesa. Eso se puede hacer de muchas maneras. Un enfoque que es popular en este momento, por una buena razón, creo, es pensar en los datos como un árbol de estado en el lado del cliente y realmente hacerlo con Redux. Pero debe comenzar en alguna parte; si algo le parece abrumador, comience con lo que resuelva su necesidad inmediata. Siempre puede refactorizar más tarde para acomodar los cambios en la forma en que decide diseñar el sistema. Mi consejo sería centrarse en el progreso sobre la perfección hasta que tenga más experiencia.

Nota al pie: También hay otras opciones además del JavaScript que realiza solicitudes de datos al backend. Puede serializar el JSON en el HTML emitido por el servidor. De esa manera, no se necesita una solicitud adicional y puede tomar ese JSON y pasarlo a una función que inicie los componentes React. De hecho, utilicé este enfoque para una necesidad muy específica. Pero la forma más típica de obtener datos es hacerlo a través de JavaScript, por lo que me concentré en eso arriba. Pero agrego esta nota al pie para señalar que no hay una sola manera de hacer las cosas.

More Interesting

Cómo decidir qué idioma y marco de back-end usar para su proyecto

¿Cuáles son todas las cosas que debo aprender para ser un muy buen desarrollador web front-end y back-end? ¿Qué lenguaje, marcos? Gracias.

¿Qué conocimiento debo tener para ser llamado desarrollador senior de back-end?

¿Cuál es el mejor idioma para escribir el back-end del sitio web y por qué?

¿Qué es la pila de Pied Piper? ¿Qué tecnología están usando?

Alguien me dijo que puedo usar C ++ para construir el backend, ¿cómo puede ser esto posible?

¿Cuál es la pila tecnológica de Twilio?

¿Es una pérdida de tiempo aprender Rails en 2016?

¿Cómo comenzar a escribir el servicio de backend? ¿Debo crear bases de datos primero? ¿O debería escribir el código primero? ¿Qué es exactamente escribir código de fondo?

Cómo dominar rápidamente JavaScript y Node.js en un mes con un fondo existente en Java

¿Tengo que ser un desarrollador web de pila completa para ser un probador de aplicaciones web, y debo aprender PHP como desarrollador de back-end?

¿Por qué los desarrolladores frontend a veces desprecian a los desarrolladores de back-end y por qué algunas personas piensan que la interfaz de usuario es más fácil que back-end?

¿Las sems finales en Manipal son más fáciles en comparación con las sesiones? ¿Es fácil anotar en semifinales?

¿Está mal especializarse solo en el desarrollo de backend?

¿Por qué tantos desarrolladores de IU piensan que el backend desaparecerá?