Очистка введенных значений
Порой необходимо очистить значение, которое пользователь ввел по ошибке. Это может понадобиться, когда у вас есть несколько "веток" вопросов с разными вариантами ответов в каждой из них. Пользователь может сначала дать ответы в одной ветке, а потом передумать и дать другой.
Чтобы очистить введенные значения, используйте действие action.set и конструкцию { "$empty": true }
. Вызывать это действие можно по кнопке или по триггеру.
Пример
Допустим, вы спрашиваете пользователя, кого он больше любит, кошек или собак. Затем вы просите его выбрать любимую породу, это поле у вас обязательное.
Возможна ситуация, что указав породу, пользователь поменяет свой выбор животного и в результатах вы получите ответы: животное — кошка, порода — такса.
Посмотреть пример с ошибкой в песочнице.
Чтобы исправить это, надо добавить код для очистки данных о породе (breed
) при выборе другого животного (animal
):
"plugins": [
{
"type": "plugin.trigger",
"onChangeOf": {
"type": "data.output",
"path": "animal"
},
"action": {
"type": "action.set",
"data": {
"type": "data.output",
"path": "breed"
},
"payload": {
"$empty": true
}
}
}
]