gpt4 book ai didi

javascript - 使用 immutablejs 更新列表中的名称

转载 作者:行者123 更新时间:2023-12-03 05:18:47 25 4
gpt4 key购买 nike

我很难理解 immutablejs 的文档。我想更新名为 Sanskar 的列表。为此,我首先尝试使用 findIndex 来查找其索引并使用 update() 更新它。但我收到 item.get() 不是函数的错误。

为什么我收到 item.get is not a function 的错误?

const arr = [
{name: 'Sanskar', age: 24, designation: 'Intern Developer'},
{name: 'John', age: 28, designation: 'Developer'}
];
const list1 = Immutable.List.of(arr);

const list2 = list1.findIndex(item => item.get('name') === 'Sanskar');
console.log('list2', list2.toJS());

我正在jsbin中练习immutablejs

http://jsbin.com/zawinecutu/edit?js,console

最佳答案

请参阅下面的代码,了解如何执行您想要执行的操作的示例。第一个问题是您没有正确构建列表,第二个问题是您更新相关元素的方式。

const Immutable = require('immutable');
const arr = [
{name: 'Sanskar', age: 24, designation: 'Intern Developer'},
{name: 'John', age: 28, designation: 'Developer'}
];

// your initial data is an array of objects. If you want a List of objects:
const list1 = Immutable.List.of(...arr);

// the contents of the list are ordinary JavaScript objects.
const person2Index = list1.findIndex(item => item['name'] === 'Sanskar');

// now you can use the List.get() method:
const person2 = list1.get(person2Index);

person2['designation'] = 'Astronaut';

// do the update like this
const list2 = list1.update(person2Index, p => person2);

console.log(list2.toJS());

关于javascript - 使用 immutablejs 更新列表中的名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41484608/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com