Когда условие "absend" в Alexa APL

У меня есть структура данных, которая может содержать значение, если я хочу его отобразить. В моем примере это поле "количество". Однако, если он установлен, будут показаны оба блока, а не только один. Где ошибка?

{
  "when": "${data.quantity === undefined}",
  "type": "Text",
  "text": "for ${data.price}",
  "style": "textStyleDetails"
},
{
  "when": "${data.quantity >= 0}",
  "type": "Text",
  "text": "${data.quantity}x for ${data.price}",
  "style": "textStyleDetails"
},

Я тоже пробовал условия:

  • data.quantity == 'undefined'
  • !data.quantity
  • (typeOf data.quantity) === 'undefined'

Ни один из них не работает.

1 ответ

Решение

Попробуйте использовать ${data.quantity == null} Null - это распознанная константа в синтаксисе привязки данных APL: https://developer.amazon.com/docs/alexa-presentation-language/apl-data-binding-syntax.html. Также в APL не поддерживается оператор '==='.

Другие вопросы по тегам