7
Ho creato una classe ES6 per Babel e desidero mappare i dati JSON ottenuti da un server alla classe ES6.
C'è qualche modo comune per farlo?Come mappare i dati JSON a una classe
user.js
export default class User {
constructor() {
this.firstName;
this.lastName;
this.sex;
}
}
app.js
import User from "./classes/User";
var data = JSON.parse(req.responseText);
console.log(data.firstname); //Bob
//now...just set data one by one?
tuo answe mi domando (e sperando che qualcuno possa darmi una risposta), ma questo costrutto * plain * ora non * definisce * più le proprietà di 'User' che vanificano lo scopo di avere una definizione di classe. Potresti aggiungere proprietà alla tua risposta come esempio? –
La soluzione con 'Object.assign' funziona solo quando non ci sono proprietà di alcuni tipi di classe. Se 'User' ha' indirizzo' dovremmo chiamare 'this.address = new Address (data.address)' nel costruttore 'User'. – Vojta