Usare gli Events per manipolare i Dati Prodotto nel Frontend

Questo ti permette di cambiare nomi, prezzi, link etc. in base alla logica del frontend

Se vuoi mostrare prezzi completamente unici in base a quale cliente ha effettuato l'accesso, o hai bisogno di manipolare altri dati prodotto in base a un'impostazione del frontend, allora hai bisogno di impostare un Evento  su Clerk.io.
Gli eventi (Event) sono funzioni Javascript che vengono eseguite prima o dopo che Clerk.io mostra i prodotti.


Le funzioni possono essere definite nel tuo source-code e successivamente referenziate con un un Event di questo tipo: 

<span class="clerk" data-template="@popular-products" data-before-render="logProducts"></span>

<script>
  function logProducts(data) {
  console.log(data.response.result);
  }
</script>

La funzione prende l'argomento data, che è l'intero oggetto di risposta (response object) che Clerk.io rimanda dall'API.

La parte più importante della risposta è product_data che contiene ogni attributo dei prodotti che Clerk.io rimanda:

Questi dati possono essere manipolati, quindi l'attributo è sostituito o aggiunto a un altro valore. Puoi anche aggiungere nuovi attributi al tuo Design in questo modo.

qui un esempio di come poterlo fare semplicemente:

<span class="clerk" data-template="@popular-products" data-before-render="fetch_customer_price"></span>

<script type="text/javascript">
   function fetch_customer_price (data) {
      for (i = 0; i < data.response.product_data.length; i++) {
         var product = data.response.product_data[i];
         var custom_price = product.price/2;
product.custom_price = custom_price;
      }
   }
</script>

Nell' esempio qui sopra, il prezzo viene prima diviso per 2 e poi assegnato all'attributo custom_price in Clerk.io. Questo può quindi essere visualizzato nel tuo Design in questo modo:

 {{ custom_price }} 

 Questa procedura ti permette di mostrare prezzi completamente unici, pur continuando a utilizzare la nostra funzione intuitiva Javascript.