JSFiddle - React, Tailwind, and code Playground

HTML

<div class="products">
    <div class="row">
        <div class="col-md-3">
            <div class="ibox">
                ...
                 <a href="#" onClick="metricasEC.productClick(this)" data-name="CANECA MINI DC COMICS WONDER WOMAN BODY" data-id="12345" data-price="10.00" data-brand="DC Comics" data-category="Canecas" data-variant="Branca" data-list="Mais visitados" data-position="1" class="btn btn-xs btn-outline btn-primary">COMPRAR AGORA! <i class="fa fa-long-arrow-right"></i> </a>
            </div>
        </div>
        <div class="col-md-3">
            <div class="ibox">
                ...
                 <a href="#" onClick="metricasEC.productClick(this)" data-name="CANECA HERMIONE" data-id="67890" data-price="19.90" data-brand="Warner" data-category="Canecas" data-variant="Branca" data-list="Mais visitados" data-position="2" class="btn btn-xs btn-outline btn-primary">COMPRAR AGORA! <i class="fa fa-long-arrow-right"></i> </a>
            </div>
        </div>

    </div>
</div>

JavaScript

metricasEC = (function(){
	productClick = function(e){
		dataLayer.push({
    	'event': 'productClick',
	    'ecommerce': {
  	    'click': {
    	    'actionField': {'list': e.getAttribute("data-list")},
        	'products': [{
          	'name': e.getAttribute("data-name"),
	          'id':	e.getAttribute("data-id"),
  	        'price': e.getAttribute("data-price"),
    	      'brand': e.getAttribute("data-brand"),
      	    'category': e.getAttribute("data-category"),
        	  'variant': e.getAttribute("data-variant"),
          	'position': e.getAttribute("data-position")
         	}]
       	}
     	},
		});
  }
  return {
  	productClick: productClick
  }
})();