【发布时间】:2021-03-13 16:20:57
【问题描述】:
我有一个函数“Next”,它映射一个数组,如下例所示,在增加元素后我正在做某事,但我还有另一个函数“Prev”,它几乎做了类似的映射,但在那个函数中,我正在减少元素。 Next 函数可以正常工作,但 Prev 函数不能,有人可以帮我解决这个问题吗?
我正在映射一个对象数组
[
{
"id":"v82b3a65",
"name":"Name"
},
{
"id":"u0b26551",
"name":"Name2"
}
]
我的功能:
const Next = () => {
array.items.map((item, key, element) => {
var next = element[key ++];
setId(next.id);
});
};
const Prev = () => {
array.items.map((item, key, element) => {
var prev = element[key --];
setId(prev.id);
});
};
render(
<View>
<Button title={'Prev'} onPress={Prev}/>
<Button title={'Next'} onPress={Next}/>
</View>
)
我在按钮的 onPress 中使用这些功能
我需要的结果:按下 Next 按钮时我希望它设置 setID = 下一个对象 id 并且按下 Prev 按钮我想设置 setID = 上一个对象 id
【问题讨论】:
-
你在哪里增加元素?
index++增加索引,而不是元素。你的意思是var next = value + 1?或者只是value++并删除整个next变量,因为++增加(并更新)value变量。 -
请添加更多代码并解释正在发生的事情以及您希望看到的不同情况
-
@akaphenom 我已经更新了代码
-
我想弄清楚你为什么要映射到数组上?我仍然不确定您想要的结果是什么?地图适用于每个包含的实例...
标签: javascript typescript react-native