Вы можете перебирать свойства, фильтровать их в зависимости от вашего состояния, а затем создавать всплывающее содержимое в виде строки.
Рассмотрим пример:
const feature = {
properties: {
attr1: 'text',
attr2: null,
attr3: 42,
attr4: null,
...
}
};
const popupContent = Object
.keys(feature.properties)
.reduce((acc, property) => {
const value = feature.properties[property];
// your condition here
if (value) {
acc.push(`${property}: ${value}`);
}
return acc;
}, [])
.join(', ');
console.log(popupContent) // attr1: text, attr3: 42