使用 viv.self 库将日期选择器的初始值设置为用户的生日需要采取哪些其他步骤?这是处理此问题的最佳地点吗?目前,我将默认设置为30年之前。
render {
date-picker {
// Default Date -30 Years (viv.self Birthday Option)
initial-value ("subtractDuration(now().date, 'P30Y')")
restrictions {
// allow selection 80 Years Ago
min-allowed ("subtractDuration(now().date, 'P80Y')")
// to allow selection 18 Years Ago
max-allowed ("subtractDuration(now().date, 'P18Y')")
}
}
}
答案 0 :(得分:0)
match-pattern
来实现。在“操作”中,创建类型为time.Date
(或role-of
中time.Date
为action (GetBirthDate) {
type(Constructor)
description (Collect the date selected by a user)
collect {
input (usersBirthday) {
type (BirthDate)
min (Required) max (One)
default-init {
intent {
// TO-DO Get the birthday with an intent
}
}
}
// This input will hold the value entered by the user
computed-input (birthDate) {
type (BirthDate)
min (Required) max (One)
compute {
intent {
goal: BirthDate
}
}
}
} output (BirthDate)
}
的概念)的其他属性来保存生日。
这里的代码看起来像。
structure (BirthDate) {
description (__DESCRIPTION__)
role-of (time.Date)
}
上面的代码中使用的BirthDate概念看起来像这样
match-pattern
您的输入视图将如下所示。这定义了一个input-view {
match: BirthDate (this) {
to-input {
GetBirthDate (action)
}
}
render {
date-picker {
initial-value (action.usersBirthday)
restrictions {
// allow selection 80 Years Ago
min-allowed ("subtractDuration(now().date, 'P80Y')")
// to allow selection 18 Years Ago
max-allowed ("subtractDuration(now().date, 'P18Y')")
}
}
}
}
,只要我们需要BirthDate的输入视图并且BirthDate用作操作的输入,便会调用它。
此处结帐匹配模式:https://bixbydevelopers.com/dev/docs/dev-guide/developers/customizing-plan.match-patterns
forEach