Я хотел бы преобразовать следующий массив:массив вложенных объектов
let errors = [
{
field: "data.time",
message: "less length than allowed"
},
{
field: "data.time",
message: "wrong format"
},
{
field: "data.age",
message: "too young"
},
{
field: "data.age",
message: "not enough information"
}
];
Into:
[
{ time: "less_length_than_allowed <br> wrong_format"},
{ age: "too_young <br> not_enough_information"},
]
Я в принципе хочу, чтобы удалить строку «данных.» для каждого атрибута поля. Затем объедините массив, с общим полем в качестве ключа объекта и конкатенацией сообщений для значения.
Это то, что я до сих пор:
var removedData = errors.map(item => {
item.field = item.field.slice(5);
return item
});
var computedErrors = _.chain(removedData).groupBy('field').value();
FYI - ваш первый скрипт фактически изменяет массив 'errors', а также –
. Я не возражаю, если ошибки меняются. – Joelito
Почему символы подчеркивания в ответе' time: ', но не в результатах« age: »? –