Создайте событие формы
Исправьте dataLayer.push и проверьте поля и типы данных.
Задача
Доработайте trackLead(form): создавайте generate_lead только для валидной формы. Возьмите form_id из входных данных, передайте lead_source: website_form, value: число 50 и currency: USD.
- ID соответствует отправленной форме
- Невалидная форма не создаёт событие
- В событии нет имени и email
Учебный сайт
СимуляцияОбсудить проект
Учебная форма заявки. Очистите поле, чтобы проверить невалидные данные.
trackLead(form)
{
"id": "contact_simple",
"name": "Demo",
"email": "learner@example.test",
"valid": true
}Запустите решение, чтобы включить действия.
Ваше решение
JavaScriptCtrl / ⌘ + Enter - запуск. Tab - переход к следующему элементу.
Подсказки и объяснение
dataLayer.push добавляет сообщение в локальную очередь. Поле event называет действие, остальные поля его описывают. Строка "50" и число 50 - разные значения.
Результат
Локальные данныеЗапустите решение, затем выполните действие на учебном сайте.
Возможности и ограничения
Здесь работают dataLayer.push, переменные Data Layer / Constant / Event / Custom JavaScript, условия Custom Event и локальный результат GA4 Event. Для Custom HTML доступны один inline-скрипт и небольшой DOM, описанный в задании. Контейнер, подключение Preview, consent engine, шаблоны, внешние скрипты и отправка в GA4 не реализованы.
Сообщения обрабатываются по порядку. Объекты объединяются, массивы заменяются, null очищает значение. Путь через точку читает состояние на момент события. Это ограниченная модель, а не полная реализация GTM Data Layer Variable v2. Ссылки {{Variable}} работают вне строк и комментариев; ссылки внутри шаблонных строк и регулярных выражений не поддерживаются.
JSON-экспорт - проект тренажёра, а не контейнер GTM. Для переноса создайте соответствующие переменные, триггер и тег в GTM и проверьте их на своём сайте. Учебный код не имеет доступа к cookies, хранилищу, сети и рабочему dataLayer этого сайта.
Google: работа с data layer