Babel でES6クラスを作成し、サーバーから取得したJSONデータをES6クラスにマッピングしたいと思います。
それを行う一般的な方法はありますか?
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?
次のように、Object.assign
を使用してJSONオブジェクトをthis
にマージします。
class User {
firstName;
lastName;
sex;
constructor(data) {
Object.assign(this, data);
// ^^^^^^^^^^^^^^^^^^^^^^^^^^
}
}
var data = JSON.parse(req.responseText);
new User(data);