Sto lavorando su un'applicazione React / Redux. Ricevo un oggetto dati dall'api che assomiglia a questo:
const dataObj = [
{
id: 1,
name: "Filo",
activity: 9,
info: {
statusCode: 4
}
},
{
id: 2,
name: "Spot",
activity: 8,
info: {
statusCode: 2
}
}
];
Devo eseguire i dati attraverso una serie di funzioni condizionali per creare elementi dom in diversi punti come questo:
const getElementsIcons = dog => {
const elementData = []
elementData.push({...})
if (dog.info.statusCode === ADOPTED_ID) {
elementData.push({...})
}
if (dog.info.statusCode === PENDINGID) {
elementData.push({...})
}
if (dog.info.statusCode === PENDING_ID && dog.activity === OTHER_VALUE) {
elementData.push({...})
}
return elementData
}
Tuttavia, ha senso avere questa logica condizionale in linea sopra, o dovrei creare una "classe" in questo modo:
function Dog(data) {
this.name = data.name;
this.isAdopted = data.statusCode === ADOPTED_ID;
this.otherCondition =
data.statusCode === PENDING_ID && data.activity === OTHER_VALUE;
}
Quindi gestisci i dati modificati in tutta l'applicazione?
Se ha senso creare una classe, dovrei farlo quando normalizzo i dati dalla chiamata api dove li memorizzo in redux, o più tardi quando lo passo al componente react che consuma i dati?