Cómo unirse a dos formas (una es una matriz dentro de otra) -- angular campo con forms campo con angular6 campo con formbuilder camp Relacionados El problema

How to join two forms (one is array inside of another)


2
vote

problema

Español

Estoy teniendo problemas uniéndome a esos dos

  let tasks = [];      this.tasks.map(it => {         tasks.push(             {                 'prop1': it['prop1'],                 'prop2': it['prop2'],                 'prop3': it['prop3'],             }         );     });      let projects = {         'title': this.projectForm.value['title'],         'state': this.projectForm.value['state'],         'comment': this.projectForm.value['comment'],         'other':          // here I want to have the whole "tasks" array with "prop1", "prop2", "prop3".     };   

Cómo lanzar toda la respuesta de las tareas a los proyectos- & gt; otros? Tengo una buena respuesta cuando i consolijo tareas, pero los proyectos simplemente no tienen "OTROS" PROP y eso hace que mi forma sea inválida.

Formularios se realizan con Formbuilder angular.

(solo que le haga saber que en este caso usando ":" no funciona: no se asigna la matriz y la propiedad "Otro" se omite completamente en la consola, etc.)

Original en ingles

I'm having problem joining those two

let tasks = [];      this.tasks.map(it => {         tasks.push(             {                 'prop1': it['prop1'],                 'prop2': it['prop2'],                 'prop3': it['prop3'],             }         );     });      let projects = {         'title': this.projectForm.value['title'],         'state': this.projectForm.value['state'],         'comment': this.projectForm.value['comment'],         'other':          // here I want to have the whole "tasks" array with "prop1", "prop2", "prop3".     }; 

How to throw the whole response from tasks to projects->other? I have good response when I console.log tasks, but projects just don't have "other" prop and that makes my form invalid.

Forms are made with Angular FormBuilder.

(Just letting you know that in this case using ":" doesn't work - array is not assigned and property "other" is completely skipped in console etc.)

           

Lista de respuestas

2
 
vote
vote
La mejor respuesta
 

Operador de distribución

Esto hará lo que necesita

  Project Collection Build Service (xxx)9  

nota Operador de propagación comienza con '...' y es la característica ES6

Estoy agregando un ejemplo adicional desde el uso de la consola del navegador (Chrome), esto debería ayudar a aclararlo más.

ingrese la descripción de la imagen aquí

Entonces, un compañero levantó un punto en los comentarios sobre cómo tener una matriz en la propagación en lugar de un solo objeto A continuación se muestra algo que puede referirse;) ¡Disfruta!

ingrese la descripción de la imagen aquí

Agregar una forma más de hacerlo usando el operador de distribución:

ingrese la descripción de la imagen aquí

 

Use spread Operator

This will do the thing you need

let otherObject= {...tasks};  let projects= {'other': {...otherObject}, 'title': this.projectForm.value['title'],         'state': this.projectForm.value['state'],         'comment': this.projectForm.value['comment']     } 

Note spread operator starts with '...' and is ES6 feature

I am adding further an example from using browser console ( chrome), This should help to clarify it further.

enter image description here

So one mate raised a point in the comments about having an array in spread in place of single object Below is something you can refer ;) enjoy!!

enter image description here

Adding one more way of doing it using spread operator :

enter image description here

 
 
         
         
0
 
vote

Puede usar el tipo simple $(System.DefaultWorkingDirectory)20 a Concat Dos objetos, y también aquí hay un entorno en línea que puede ver unirse a dos objetos, (su ejemplo): https://stackblitz.com/edit/angular-cdjv2k

 

You can use simple equal : to concat two objects is typescript, and also here is online environment you can see join two objects, (your example) : https://stackblitz.com/edit/angular-cdjv2k

 
 

Relacionados problema

0  No se pueden crear entradas personalizadas para algunos tipos (texto, booleanos, ...), con forma simple  ( Cant create custom inputs for some text booleans types with simpleform ) 
No puedo averiguar por qué esto no está funcionando como debería, ¿o - me estoy perdiendo algo importante? Aquí está la lista de los tipos asignados de SIMP...

1  ¿Cómo insertar una nueva imagen para los nuevos datos de JSON anidados en Angular2 con FormBuilder?  ( How to insert new image for new nested json data in angular2 with formbuilder ) 
Lo que trato de hacer es crear un archivo JSON con imagen con FormBuilder para guardar en la base de datos de Firebase, pero primero necesito crear datos de m...

8  Crea un campo de entrada de matriz con Formulario Symfony2  ( Create array input field with form builder symfony2 ) 
Estoy teniendo problemas con el uso de Form Form Builder en Symfony2. Para ser exactos, necesito un campo de entrada que sea matriz HTML, pero no puedo crearl...

4  Symfony 2 Tipo de campo propio: siempre "Este valor no es válido" error  ( Symfony 2 own field type always this value is not valid error ) 
He creado un nuevo tipo de campo de formulario llamado "Gamesetting". Este tipo debe manejar entradas de texto y casillas de verificación, según el valor de l...

1  Formulario de constructor y soporte multilingüe  ( Form builder and multilingual support ) 
Estoy construyendo una aplicación web multilingüe en la que un administrador puede crear formularios (a través de un constructor de formulario) que los usuari...

0  Symfony - Formulario incrustado no se mostrará  ( Symfony embedded form wont display ) 
Estoy tratando de crear un formulario para insertar "Preguntas" que pueden tener una o más "respuestas". Así que quiero agregar un formulario de incrusta para...

0  ¿Puede ser posible subformar por un formulario en el constructor de formulario de orbeon?  ( Can it possible to subforms for a form in the orbeon form builder ) 
He creado una forma simples en Form Builder. Pero ahora necesito crear un formulario que pueda necesitar un tipo de subformulario en él. Déjame explicar mi es...

0  Usando ckeditor gema con rieles atributo anidado  ( Using ckeditor gem with rails nested attribute ) 
¿Alguien ha podido usar la gema ckeditor (https://github.com/galetahub/ckeditor/issues/98) adjunta a un objeto de constructor de formulario en un formulario a...

8  Symfony 2 Entrada de fecha con el selector de AÑO SOLAMENTE  ( Symfony 2 date input with only year selector ) 
¿Es posible hacer un campo de entrada de fecha, con solo widget de selector de año en SymFony 2 FormBuilder, o debería usar un campo de entrada de tipo de tex...

2  Automatching Property_Path en API Symfony  ( Automatching property path in symfony api ) 
Estoy teniendo una API de descanso incorporada en Symfony3. Como ejemplo, aquí están los campos de API de precio en un formulario, hechos con el Formbuilder...




© 2022 respuesta.top Reservados todos los derechos. Centro de preguntas y respuestas reservados todos los derechos