在Zapier代码中无法访问JSON对象,动态下拉菜单创建失败
解决Zapier中嵌套JSON解析生成动态下拉菜单的问题
你的返回JSON是嵌套数组结构,层级没处理对才导致campaign_name未定义:
原始JSON结构:
[{"id": [{"id": "1","campaign_name": "Charities"},{"id": "2","campaign_name": "SaaS"}]}]
外层是单个元素的数组,这个元素的id字段才是包含campaign数据的数组。之前的写法没正确遍历这层嵌套,试试以下代码:
// 假设results为接口返回的原始数据 const campaignList = results[0].id; const dropdownOptions = campaignList.map(item => ({ id: Number(item.id), label: item.campaign_name })); return dropdownOptions;
关键说明:
- 先通过
results[0].id取出真正的campaign数据数组,而不是直接访问results.id(因为results是数组,不是对象) - 用
map遍历数组里的每个campaign对象,直接提取id(转成数字类型)和campaign_name作为下拉选项的对应字段
如果还是有问题,先在代码里加一行console.log(campaignList),确认是否正确拿到了包含两个campaign对象的数组,再逐个检查item.id和item.campaign_name是否存在。
内容的提问来源于stack exchange,提问作者stevep1986
相关产品推荐
相关产品推荐

