JSFiddle - React, Tailwind, and code Playground
by Hugo Carneiro
HTML
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.11/lodash.min.js"></script>
JavaScript
var dataObj = {}
var original = [{
id: 1,
values: {
foo: 'bar'
}
},
{
id: 2,
values: {
foo: 'bar'
}
}
]
var newArray = []
newArray.forEach((wi) => {
const index = _.findIndex(original, {
'id': wi.id
})
if (index > -1) {
original.forEach((item, idx) => {
if (index === idx) {
_.merge(item, wi)
}
})
dataObj.widgetInstances = original
} else {
const savedWidgetInstances = original
savedWidgetInstances.push(wi)
dataObj.widgetInstances = savedWidgetInstances
}
})
console.log(dataObj)