0
私は、サーバーから受け取ったJSONを使用して作成された不変な人のリストを持っています。私は今、AJAXリクエストを送信することで、1人を更新します。サーバーからの応答により、更新された人物が返されます。どのように更新された人と不変のリストを更新するのですか?私の試みでは、単純に誤った結果をもたらすインデックスでリスト要素を置き換えます。私はそれを人のIDで置き換えて欲しい。Immutable.jsでリストをidでマージするには?
var Immutable = require('immutable');
// Get me all my people
var peopleResponse = [
{ username: 'jsmith', title: 'Manager', dept: 'Engineering', salary: 100000 },
{ username: 'lwhite', title: 'Manager', dept: 'Sales', salary: 90000 }
];
// Convert to immutable structures
var people = Immutable.fromJS(peopleResponse);
console.log(people);
// Change lwhite's salary to 100,000
var updateResponse =
{ username: 'lwhite', title: 'Manager', dept: 'Sales', salary: 100000 }
var updatedPeople = [ Immutable.fromJS(updateResponse) ];
people = people.merge(updatedPeople);
console.log(people);
出力:更新リストは2 lwhite
秒を持っていることを
List [ Map { "username": "jsmith", "title": "Manager", "dept": "Engineering", "salary": 100000 }, Map { "username": "lwhite", "title": "Manager", "dept": "Sales", "salary": 90000 } ]
List [ Map { "username": "lwhite", "title": "Manager", "dept": "Sales", "salary": 100000 }, Map { "username": "lwhite", "title": "Manager", "dept": "Sales", "salary": 90000 } ]
注意!
*は、どのように私は申し訳ありません*。更新者との不変のリストを更新するのですが、どのように不変のリストを更新することができますか? – smnbbrv
明確にするために、私は文字通り意味しませんでした。私が意味したのは、更新された人と新しいリストを得ることでした。 – Naresh