adobe.target.triggerView (viewName, options) - at.js 2.x
Skapat för:
- Utvecklare
Den här funktionen kan anropas när en ny sida läses in eller när en komponent på en sida återges på nytt. adobe.target.triggerView()
ska implementeras för enkelsidiga program (SPA) för att använda Visual Experience Composer (VEC) för att skapa A/B Test- och Experience Targeting (XT)-aktiviteter. Om adobe.target.triggerView()
inte har implementerats på platsen kan VEC inte användas för SPA. Mer information finns i Implementering av Single Page-program.
Parameter | Typ | Obligatoriskt? | Beskrivning |
---|---|---|---|
viewName | Sträng | Ja | Ange valfritt namn som en strängtyp som du vill representera vyn. Vynamnet visas på Modifications-panelen i VEC så att marknadsförare kan skapa åtgärder och köra sina A/B Test- och Experience Targeting XT-aktiviteter. |
alternativ | Objekt | Nej | |
alternativ > sida | Boolean | Nej |
TRUE: Standardvärdet för sidan är true. När page=true skickas meddelanden till Target-serverdelen för ökat antal visningar. Ett meddelande skickas alltid som standard när FALSKT: När page=false skickas inga meddelanden för ökat antal visningar. Detta tillvägagångssätt bör användas när du endast vill återge en komponent på en sida med ett erbjudande. Obs! Anpassade koderbjudanden i VEC återges inte igen när |
Exempel: Sant
triggerView()
-anrop om du vill skicka ett meddelande till Target-serverdelen för att öka antalet aktivitetsavtryck och andra mått.
adobe.target.triggerView("homeView")
Exempel: Falskt
triggerView()
anrop om att inte ha meddelanden skickade till Target-serverdelen för att göra en inläsningsräkning.
adobe.target.triggerView("homeView", {page: false})
Exempel: Löpande kedja med getoffers()
och applyOffers()
Om du vill köra triggerView()
när getOffers()
-löftet är löst är det viktigt att köra triggerView()
på det sista blocket, vilket visas i exemplet nedan. Detta är nödvändigt för att VEC ska kunna identifiera Views
i redigeringsläge.
adobe.target.getOffers({
'request': {
'prefetch': {
'views': [{
'parameters': {}
}]
}
}
}).then(function(response) {
// Apply Offers
adobe.target.applyOffers({
response: response
});
}).catch(function(error) {
console.log("AT: getOffers failed - Error", error);
}).finally(() => {
// Trigger View call, assuming pageView is defined elsewhere
adobe.target.triggerView(pageView, {
page: true
});
console.log('AT: View triggered on : ' + pageView);
});
Exempel: Bästa kompatibilitet för triggerView()
med Adobe Visual Editing Helper extension
Tänk på följande när du använder tillägget Hjälp för visuell redigering i Adobe:
På grund av Googles nya V3-manifestprinciper för Chrome tillägg måste Visual Editing Helper extension vänta på DOMContentLoaded
-händelsen innan Target-biblioteken läses in i VEC. Den här fördröjningen kan göra att webbsidor utlöser anropet triggerView()
innan redigeringsbiblioteken är klara, vilket gör att vyn inte fylls i vid inläsningen.
Använd en avlyssnare för händelsen load
om du vill åtgärda problemet.
Här är ett exempel på implementering:
function triggerViewIfLoaded() {
adobe.target.triggerView("homeView");
}
if (document.readyState === "complete") {
// If the page is already loaded
triggerViewIfLoaded();
} else {
// If the page is not yet loaded, set up an event listener
window.addEventListener("load", triggerViewIfLoaded);
}