Заметки по тегу: AMP
Показать все
В контексте email-верстки стейты (состояния) используются для сохранения каких-либо данных по аналогии с переменными в программировании. Управление ими происходит через события и действия.
Важно отметить некоторые неочевидные особенности:
➖Начальное состояние, заданное через
➖Mail.ru игнорирует любое задание начальных значений. То есть в данном случае myItem.el в span отобразит null после клика на кнопку:
<amp-state id="myItem">
<script type="application/json">
<script type="application/json">
{
"el":"some value"
}
</script>
</amp-state>
<span [text]="myItem.el"></span>
<button on="tap:AMP.setState({})">Кнопка</button>
При этом Gmail ее обработает корректно и мы увидим текст «some value».
Какими могут быть варианты обхода этих моментов?
➖Всегда задавайте значение по-умолчанию, которое отобразится и без изменения стейта. Продолжая наш пример:
<span [text]="myItem.el">some value</span>
➖Вместо прямого использования
<button on="tap:AMP.setState({ myItem: { el: 'some value' } })">
Кнопка
</button>
<div [text]="myItem.el"></div>