Bixby Capsule中的Javascript API中“类型”模块的目的是什么?

时间:2019-11-04 21:59:37

标签: bixby bixbystudio

Link to Dochttps://bixbydevelopers.com/dev/docs/reference/JavaScriptAPI/types

从本质上讲,我无法理解术语。我觉得这太模糊了。我不知道它是创建新的原始类型,还是在其中为现有原始类型提供新值的模块(如上所述,它是“输出类型”的扩展或上下文化)?

1 个答案:

答案 0 :(得分:4)

此函数在JavaScript中执行Bixby特定类型的强制转换,类似于EL中的$expr()。您可以声明一个这样的动作:

action (FindTicket) {
  output (event.Ticket)
}

您可能希望此操作的JavaScript实现能够返回{em> 更具体的类型,而不仅仅是event.Ticket。假设它可以同时返回event.MovieTicketevent.ConcertTicket概念的extendevent.Ticket。如果您的JS代码包含event.Ticket数据,则在返回值时可能会将其转换为其他特定类型之一:

if (ticket.type == 'movie') {
  return types.TypedValue(ticket, "event.MovieTicket", ticket.id);
else if (ticket.type == 'concert') {
  return types.TypedValue(ticket, "event.ConcertTicket", ticket.id);
else {
  // the "ticket" object is already an event.Ticket, and can be returned directly
  return ticket;
}