我在Zapier CLI中有我的应用程序。我已经创建了一个触发器,用于在zap创建期间设置特定操作步骤的下拉值。数据是这样的:
{ "data": {
"account_status": {
"field_name": "account_status",
"field_label": "Status",
"field_type": "list",
"field_length": "50",
"field_items": "Active|Inactive|444|Closed",
"required": "0",
"related_module": "",
"related_field_name": "",
"join_table": "",
"join_lhs_field_name": "",
"join_rhs_field_name": "",
"related_data_field": ""
},
}
}
这是我的代码:现在我尝试使用上面结果中的field_items值来设置动态下拉列表的数据,如下所示:
return responsePromise
.then(response => JSON.parse(response.content ) )
.then(data => {
const account_status_list = data.data.account_status.field_items;
const account_status_arr = account_status_list.split("|");
return account_status_arr.map(function(e){
e.id = e
return e
})
})
我的动态下拉触发器的输入字段是:
{
key: 'account_status',
label:'Account Status',
required: false,
dynamic: 'account_status.account_dropdown.id'
}
单击下拉菜单时,我会看到以下错误
有没有人能建议我哪里出了问题,或者我可以做些什么来解决这个问题?
发布于 2018-07-24 04:05:40
我是David,来自Zapier平台团队。
问题是,Zapier需要一个对象数组,而您返回的是一个字符串数组。看起来您正在尝试在代码片段中创建一个id字段,但是调用"Active".id = "Active"
不会生成一个对象。
相反,您应该将您的map函数更改为如下所示:
return account_status_arr.map(function(e){
return {id: e}
})
您可能需要调整的另一件事是如何设置动态下拉菜单。它是一个句点分隔的字符串,格式为trigger_key.id_key.label_key
。id
和label
可以是同一个密钥;这实际上取决于您需要发送给API的数据(标签只是为了显示,id是实际发送的数据)。在动态字段中,您将拥有一个将为account_status.id.id
的dyanmic
属性。
这里有here文档。
https://stackoverflow.com/questions/51477766
复制相似问题