在使用的react版本如下:
已写的代码:
// ...
const deleteRent = (item) => {
API.patch(`/user/houses/${item.houseCode}`).then(() => {
// ...
})
patch接口显示需要shelf:
希望实现如下效果,点击某项后,被点击项被下架,不再显示在原来的页面里,即使刷新或重新进入原来的页面也不会再出现
请问shelf的使用是这样吗:
// ...
const deleteRent = (item) => {
API.patch(`/user/houses/${item.houseCode}`,
params: {
shelf: false
}
).then(() => {
// ...
})
请问项目上下架里的shelf参数的正确使用方法是什么?请在现有代码基础上展示举例说明~
望采纳!!!点击该回答右侧的“采纳”按钮即可采纳!!!
首先,你需要在你的 react 组件中将 shelf 参数作为一个 prop 传递给你的 API 调用。
其次,你需要在你的 API 调用的 patch 方法中使用 shelf 参数。
我看了你写的,没问题的:
const deleteRent = (item) => {
API.patch(/user/houses/${item.houseCode}, { shelf: 'off' }).then(() => {
// ...
})
}
这样,你的 patch 调用就会将 shelf 参数传递给服务器,服务器会根据 shelf 参数进行相应的操作(例如下架某项)。
最后,你提到被点击的项不再显示在界面上 ,我建议你可以在你的 react 组件中使用 setState 方法更新你的数据。
我给你个例子:
const deleteRent = (item) => {
API.patch(/user/houses/${item.houseCode}, { shelf: 'off' }).then(() => {
// 从数组中删除被点击的项
setState((prevState) => ({
items: prevState.items.filter((i) => i.houseCode !== item.houseCode)
}))
})
}