Registra l’enricher
Ogni volta che il carrello si carica o cambia, Aftersell recupera il tuo fragment per ogni prodotto o variante nel carrello. Il fetch è non bloccante: il carrello renderizza immediatamente e riemette
cart_updated quando i dati arrivano. Un fragment lento o fallimentare non ritarda né rompe mai il carrello.
Leggi i dati
line.metadata.delivery è undefined finché il primo fetch non si risolve. Proteggi sempre la lettura.
Renderizzarlo nel carrello
props.line:
Dati a livello di variante
onType: 'ProductVariant' quando il metafield vive sulla variante invece che sul prodotto:
Più che metafield
Product o ProductVariant, non solo i metafield:
Cose da fare bene
- Proteggi ogni lettura.
metadataè{}di default e il tuo namespace èundefinedfinché il fetch non si risolve. Il carrello renderizza prima che i dati arrivino, sempre. - Ogni
idè un namespace a sé. Più enricher coesistono senza collidere, inclusi quelli registrati da altre app. - I metafield devono essere visibili allo Storefront. Un metafield non esposto alla Storefront API restituisce
null. Controlla la definizione nell’admin Shopify se non ottieni nulla. - Mantieni il fragment piccolo. Viene eseguito per ogni prodotto nel carrello, a ogni cambiamento del carrello. Chiedi i campi che usi, non tutto.
- Registra in fase di set-up. È un hook, quindi va all’inizio del tuo script Initialization.
- Le graffe devono essere bilanciate. Nessuna graffa esterna attorno al fragment, ma qualsiasi selezione annidata richiede la propria coppia corrispondente. Un fragment sbilanciato viene rifiutato.
Dove andare adesso
registerCartEnricher: il riferimento completo dell’hook.- Blocchi Custom code: renderizzare i dati.
- Cart object: dove si trova
metadatasu una riga.