let filter: Product = {
name: 'nokia',
price: 20,
createdDate: '12-12-2019'
}
Здесь я деструктурирую код на основе фильтра.
Фильтр имеет события, которые предоставляют данные в следующем формате:
У меня есть таблица, и таблица содержит фильтры . В фильтрах есть событие. Фильтры предоставляют данные на основе того, какой фильтр мы выбрали. Если я выберу имя, которое он даст ниже.
"filters":{"name ":{"value":"sss","matchMode":"equals"}}
if i choose price it will given below .
"filters":{"price ":{"value":"20","matchMode":"equals"}}
Здесь я деструктурировал данные на основе свойств.
let {name,price,createdDate}= event.filters;
console.log(name,'name'); // here name i will get {"value":"20","matchMode":"equals"}
console.log(price,'price'); // it is undefined.
как только я получу отфильтрованное значение имени, мне нужно сопоставить значение свойства интерфейса продукта
Мне нужно сопоставить значение на основе выбранных значений, а оставшееся свойство должно быть пустым. как я могу сделать это при деструктуризации?
Я могу сделать это в случае переключения и проверить имя и сопоставить значение, есть ли способ сделать это в объекте деструктуризации es6
Решение I найдено:
Входящая динамика c объекты
let x= event.filters; // "filters":{"name ":{"value":"sss","matchMode":"equals"}}
// предопределенные начальные значения
let filter: Product = {
name: 'nokia',
price: 20,
createdDate: '12-12-2019'
}
// predefinded objects
for (let property in filter) {
for(let m in x){
inner objects
if(m === property)
{
console.log(`1Object key= ${property} and 2ObjectValues= ${x[m].value}` );
// assigned incoming values to matched object property
filter[property]= x[m].value;
}
}
// console.log(`key= ${property} value = ${filter[property]}`);
};