如何在Adobe Launch中监听数据层show事件触发规则?
Adobe Launch监听Adobe数据层"show"事件实现方案
方案一:使用Launch原生数据层触发器(推荐)
这是最简洁的实现方式,无需自定义代码:
- 在Adobe Launch后台创建新触发器,选择数据层类型
- 在触发器配置中,设置事件名称匹配条件为
show - (可选)如果需要精准匹配特定组件,可添加额外条件:
eventInfo.reference等于component.accordion-1-item-2 - 将该触发器关联到你需要触发的规则即可
方案二:自定义代码监听器
如果你更习惯用代码控制(类似你之前实现三次点击触发的逻辑),可以通过重写数据层的push方法拦截事件:
// 初始化数据层(避免覆盖已有数据层) window.adobeDataLayer = window.adobeDataLayer || []; // 保存原始push方法 const originalPush = window.adobeDataLayer.push; // 重写push方法 window.adobeDataLayer.push = function(data) { // 先执行原生push逻辑,保证数据层正常工作 originalPush.apply(this, arguments); // 判断是否是目标"show"事件 if (data?.event === 'show') { // (可选)精准匹配特定accordion项的逻辑 // if (data.eventInfo?.reference === 'component.accordion-1-item-2') { trigger(); // 触发Launch规则的执行函数 // } } };
- 将这段代码放在Launch的页面顶部代码片段或核心代码库中,确保在页面数据层push事件前加载,避免遗漏事件
- 若需针对特定组件的
show事件触发,取消注释代码中的条件判断即可
内容的提问来源于stack exchange,提问作者Blacklover
相关产品推荐
相关产品推荐

