Bixby:如何在输入视图内的日期选择器中将初始值设置为self BirthdayInfo?

时间:2019-02-26 19:32:49

标签: bixby bixbystudio

使用 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')")
  }
}

}

1 个答案:

答案 0 :(得分:0)

  1. 您可以使用match-pattern来实现。
  2. 生日是viv.contact库的一部分,但在 viv.self 库中不可用。

在“操作”中,创建类型为time.Date(或role-oftime.Dateaction (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