javascript - 已解决:在反应客户端过滤结果数组
问题描述
我将从 graphql 返回的数据映射到一个反应应用程序。我已经使用 .filter() 来应用过滤客户端,但我无法弄清楚如何使过滤动态以供使用输入。我当前的代码是这样的:映射结果:
const names = data?.venuesByCountry.filter(deliverFilter).map(v => (
<>
<FlexGridItem>
<Link href={`${config.frontendUrl}/${v.slug}`}>
{v.isOrderingAvailable}
{v.name}
{v.isOrderingAvailable}
{v.isPickUpAvailable}
</Link>
</FlexGridItem>
</>
))
用于过滤结果的按钮:
<Button onClick={() => pickUp()}>PICK UP</Button>
<Button onClick={() => delivery()}>DELIVERY</Button>
我希望动态过滤结果的函数:
function delivery(){
deliverFilter = venuesByCountry => venuesByCountry.isDeliveryAvailable
}
function pickUp(){
deliverFilter = venuesByCountry => venuesByCountry.isPickUpAvailable
}
感谢你们的任何想法:)
解决方案
这应该有效:
过滤乐趣
function delivery(v) {
return v.isDeliveryAvailable
}
用法
...
const names = data?.venuesByCountry.filter(delivery).map(v => (
...
推荐阅读
- java - 从侦听器创建对话框
- kotlin - ktor 客户端发布多部分/表单数据
- node.js - 如何查看屏幕节点命令日志 ubuntu
- mysql - mysql连接两个表-如何根据值最初来自哪里给出不同的值?
- python - 如何托管 HTTP 代理?
- javascript - 将选择器传递给 javascript 函数
- python - 为什么 sympy Sum 函数不能计算这个总和?
- python - Windows 10 的 ADAFFRUIT_PCA9865 库问题
- python - 当 Tkinter 需要无限次读取文件时,它只在循环中读取一次文件
- python - 如何在 Python 和 Postgres 的文本列中搜索一系列整数