# 日期字段

日期字段将字符串存储为 its value,将字符串存储为 its text。它valuetext两者都具有格式YYYY-MM-DD

# 日期字段

# 编辑器打开的日期字段

# 折叠块上的日期字段

WARNING

警告:日期字段不再是核心 Blockly 库的一部分。我们现在将其发布为名为@blockly/field-date 的 npm 包 (opens new window)

# 创建

日期字段构造函数接受一个可选的value和一个可选的 校验器value应该是格式中的字符串YYYY-MM-DD。否则将使用当前(今天)日期。

# 序列化和 XML

日期字段的 XML 如下所示:

<field name="FIELDNAME">2020-02-20</field>

field节点的属性name包含引用日期字段的字符串,节点的内部文本是应用于该字段的值。内部文本值遵循与构造函数值相同的规则。

# 创建日期验证器

TIP

注意: 有关验证器的一般信息,请参阅验证器。

日期字段的值是YYYY-MM-DD格式字符串,因此任何验证器都必须接受YYYY-MM-DD格式字符串,并返回YYYY-MM-DD格式字符串null、 或undefined

请注意,在验证日期时,使用 Closure 的日期类 (opens new window)可能会有用 (打开新窗口) (opens new window).

下面是一个只接受工作日的验证器示例:

function(newValue) {
  var date = goog.date.Date.fromIsoString(newValue);
  var weekday = date.getWeekday();
  if (weekday == 0 || weekday == 6) {
    return null;
  }
  return date.toIsoString(true);
}