当我点击cell-card
时,我需要传递一些值到目标,但没有传递。但是,普通值通过了,但结构值没有通过。我给用户一个cell-card
,其中包含“下周的体育新闻是什么”。所以我的运动是类别,下周是DateTimeExpression
。
所以我可以传递类别,但不能传递时间。 这是我的onclick
on-click{
intent{
goal:NewsSearch
value-set:CategoryName{CategoryName(Sports)}
value-set:MyDateTimeExpression($expr(viv.time.DateTimeExpression(Next Week)))
}
}
我的结构MyDateTimeExpression
是
structure (MyDateTimeExpression) {
role-of(time.DateTimeExpression)
features {
transient
}
}
答案 0 :(得分:0)
在封装(
时,您的代码使用的是{
而不是MyDateTimeExpression
。
下面的代码已修改,以反映值集的正确用法
on-click{
intent{
goal:NewsSearch
value-set:CategoryName{CategoryName(Sports)}
value-set:MyDateTimeExpression{$expr(nextWeek)}
}
}
您可以查看文档以获取更多使用值和值集的示例
https://bixbydevelopers.com/dev/docs/reference/type/intent.value https://bixbydevelopers.com/dev/docs/reference/type/intent.value-set
答案 1 :(得分:0)
如果要在按钮内使用自然语言,则也许应该尝试使用conversation-driver而不是cell-card
。这样做的好处是,如果用户说出请求,它不仅可以通过按下按钮来工作,而且还可以在免提模式下工作。
在结果视图中,您将添加一个如下所示的块:
conversation-drivers {
conversation-driver {
template ("What is the sports news for the next week.")
}
}
您将在“训练”选项卡中训练类似的话语。源代码视图中的aligned-nl看起来像这样:
[g:NewsSearch] What are the (sports)[v:CategoryName:Sports] news for (next week)[v:time.DateTimeExpression]