Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Object.assign - Object with multiple values

How would I pass Object.assign dynamically?

Suppose this is my object:

this.driverForm.value.drivers

0:{last_name: "Are", first_name: "", gender: "", dob: "", address: "", …}

Now I can easily assign objects like this:

 const submittedForm = Object.assign(
        {}, this.driverForm.value.drivers[0],
 );

But how would I assign objects if my values changes like this:

0:{last_name: "Are", first_name: "", gender: "", dob: "", address: "", …}

1:{last_name: "Wert", first_name: "", gender: "", dob: "", address: "", …}

Here is the full code

saveNewDriver() {
    console.log(this.driverForm.value.drivers,'driver save');
    const submittedForm = Object.assign(
        {}, this.driverForm.value.drivers[0], {enable: true},
        {checked: false},
    );
    this.store.select('drivers').dispatch(new createDriver(submittedForm));
}

1 Answers

I don't know if I did the right thing, but I make it work

 saveNewDriver() {
    const myarray = this.driverForm.value.drivers;
    const submittedForm = myarray.map(a => ({...a, enable: true, checked: false}));
    submittedForm.forEach(driver => {
        this.store.select('drivers').dispatch(new createDriver(driver));
    });
}

Please let me know more elegant solution


Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!