Soy nuevo en el desarrollo web de React y tengo curiosidad por saber cuál es la mejor manera de manejar la siguiente situación:
Para simplificar el problema, digamos que hay un formulario de Factura donde el usuario ingresa datos básicos de factura como número, fecha, tipo de pago, método de envío, etc., y entre otros, el usuario debe elegir un cliente de facturación. Si el cliente no está presente en la base de datos, el usuario debe ingresar un nuevo cliente a través de un componente de formulario de Cliente separado.
Se me ocurren dos soluciones:
Primero es abrir una ventana emergente/diálogo dentro del formulario de Factura, que contiene todos los detalles del cliente, de modo que el usuario nunca abandone el formulario de Factura y conserve todos los datos ingresados por el usuario, y después de que los nuevos datos del cliente se hayan enviado a través de la ventana emergente, el usuario puede elegir a ese cliente en particular.
La segunda solución que viene a la mente es redirigir al usuario a la URL del formulario del cliente, pero luego todos los datos de la factura deben colocarse en algún lugar temporalmente, presumiblemente en la tienda redux o en el almacenamiento local, y después de que se haya enviado el cliente, el usuario es redirigido a formulario de factura, y todos los datos de entrada iniciales se recuperan del almacenamiento y se presentan al usuario.
Me parece que ambas soluciones tienen ventajas y desventajas, no soy muy fanático de las ventanas emergentes y los cuadros de diálogo, pero la segunda solución parece mucho trabajo para algo tan simple. He visto ambos implementados en otros sitios web. ¿Hay alguna tercera opción que no haya considerado, o qué sugieres entre estas dos?