When I put dataLayer[1].ecommerce.checkout.products[0].metric2
in the console, it return the correct value.
However, when I try to extract the value from a Custom JavaScript variable ('Test') in Google Tag Manager, it returns undefined
when Google Tag Manager is in preview mode.
The JavaScript code:
function(){
var basketSize = dataLayer[1].ecommerce.checkout.products[0].metric2;
return basketSize;
}
In case your questions hasn't been answered yet: The thing is you yon't want to reference the dataLayer array inside a dataLayer variable in GTM. This does not make sense, because you already are in the
dataLayer
"namespace". If you reference the field by simply writingecommerce./*...*/.metric2
and leaving out thedataLayer[1]
part, it will work.