Estoy cargando controles de formulario dinámicamente haciendo 2 llamadas api. La primera API para obtener la lista de control de formulario y la segunda API para obtener datos para los controles cargados previamente. La primera mitad funciona bien y puedo cargar controles dinámicamente,

esquema:

[{ id: 1, input: 'TextBox'}, { id: 2, input: 'TextArea'}] 

código:

 fields.map((type: any, i: any) ={amp}gt; { switch (type.input) { case 'TextBox': return ({amp}lt;input type="text" id={type.id}{amp}gt; /{amp}gt;) case 'TextArea': return ({amp}lt;textarea itemType="text" id={type.id}{amp}gt; /{amp}gt;)}}); 

El código anterior funciona bien y puedo crear controles de formulario.

La siguiente parte es un valor vinculante para los controles dinámicos, hago otra llamada a la API para obtener datos y debo asignar el campo de identificación y vincular datos

esquema:

 [{ id: 1, value: 'testTextBox'}, { id: 2, value: 'testTextArea'}] 

¿Cómo puedo vincular datos a los controles ahora? He intentado usar el estado, pero no he podido lograrlo. o puedo actualizar el primer esquema y agregarle una clave de valor después de obtener la segunda respuesta de la API, como se muestra a continuación,

  fields = [{ id: 1, input: 'TextBox', value: 'testTextBox'}, { id: 2, input: 'TextArea', value: 'testTextArea'}] 

¿Sugiere cómo hacer un bucle y agregar una clave de valor a la matriz de campos?

uso: setState ({})

crear los controles vinculados para indicar como:

 ({amp}lt;input type="text" id={type.id}{amp}gt; value={this.state.id}/{amp}gt;) 

al recibir los valores configúrelo en el estado como:

 this.setState({id: value}); 
Ahmed Alkaf

es un nuevo contribuyente a este sitio. Tenga cuidado al pedir aclaraciones, comentarios y respuestas. Mira nuestro

Código de Conducta

.