1

在此处输入图像描述在我的 zapier 的 inputFields 中,有一个字段供用户输入日期,但我希望 zapier 仅在我将日期写入“2020-09-18T15:30”时才能工作,否则它应该显示一条消息,表明输入的数据确实与指定的格式不匹配。我试过这个,但它不工作。

const activityEditableFields = async (z, bundle) => {
    if (bundle.inputData.dueDate) {
     (/\d{4}-\d{2}-\d{2}T\d{2}:\d{2}Z/.test(`${bundle.inputData.dueDate}`))
    }

这里是字段中的到期日期,我给出的格式是,如果其中有数据,那么它应该匹配指定的格式,但 zap 没有区别。如果你能尽快帮助我。做回复。

在此处输入图像描述

4

2 回答 2

0

我能找到解决此问题的最简单方法是仅对 JS 代码使用 ISO8601 Zapier 日期的前 10 个字符。

bundle.inputData.dueDate.substr(0,10)

或用于moment解析日期(Zapier 支持此库):

const moment = z.require('moment');
....
moment(bundle.inputData.dueDate).format("YYYY-MM-DD HH:MM:SS UTC")

唯一的缺点是需要使用代码编辑器

于 2021-11-23T16:44:00.243 回答
0

这不应该是必要的。根据文档

DateTime 字段允许用户输入日期和时间,使用人类可读的值、机器可读的日期时间或时间的标准英文单词,如tomorrow. Zapier 对用户输入的日期进行交互,并将标准 ISO 8601 日期时间输出到您的 API。

如果您将该字段声明为datetimebundle.inputData.dueDate则将始终是正确的 ISO 8601 日期时间。

于 2020-09-11T20:27:09.407 回答