DOM-Aktionsvorschläge automatisch rendern

Verwenden Sie dieses Muster, wenn Ihre Personalisierungsantwort Vorschlagselemente mit dem Schema enthält:

https://ns.adobe.com/personalization/dom-action

Diese Elemente enthalten in der Regel einen Selektor und einen Aktionstyp (z. B. setHtml), den die Web-SDK automatisch anwenden kann, wenn renderDecisions aktiviert ist.

​1. Verwalten von Flackern (optional)

Wenn Sie ein Flackern verhindern müssen, während personalisierte Inhalte angewendet werden, verwenden Sie den empfohlenen Flimmerverwaltungsansatz für Ihre Implementierung. Verfügbare Optionen ​ Sie unter ​Verwalten von Flackern“.

​2. Anfordern und Rendern von Entscheidungen, die für das automatische Rendern notiert sind

Legen Sie renderDecisions beim Aufrufen des true-Befehls auf sendEvent fest. Die renderDecisions-Eigenschaft ist standardmäßig auf „false“ festgelegt, wenn sie weggelassen wird.

alloy("sendEvent", {
  renderDecisions: true,
  xdm: {
    web: {
      webPageDetails: {
        name: "home"
      }
    }
  }
});

Optional können Sie, wenn Sie bestimmte Platzierungen anfordern müssen, Folgendes personalization.decisionScopes:

alloy("sendEvent", {
  renderDecisions: true,
  personalization: {
    decisionScopes: ["hero-banner", "recommendations"]
  },
  xdm: { }
});

Weitere Informationen finden Sie unter dem personalization-Objekt im sendEvent.

​3. Ereignisse anzeigen

Wenn Sie renderDecisions auf true setzen und personalization.sendDisplayEvent entweder auf true setzen oder auslassen, sendet die Web-SDK Anzeigeereignisse sofort nach dem Rendern der Personalisierung.

alloy("sendEvent", {
  renderDecisions: true,
  personalization: {
    // sendDisplayEvent defaults to true when omitted
  },
  xdm: { }
});

Unter Anzeigeereignisse verwalten finden Sie alternative Optionen, die den Anforderungen Ihrer Implementierung entsprechen, z. B. bei Verwendung von Ereignissen der oberen und unteren Seite.

​4. Änderungen und Rendering der SPA-Ansicht

Geben Sie bei Single Page Applications eine viewName zu Ereignissen an, die die Ansicht ändern.

alloy("sendEvent", {
  renderDecisions: true,
  xdm: {
    web: {
      webPageDetails: {
        viewName: "cart"
      }
    }
  }
});

Wenn Ihre SPA die Benutzeroberfläche für dieselbe Ansicht ohne neuen Entscheidungsabruf erneut rendert, können Sie die zuvor zurückgegebenen Vorschläge erneut anwenden:

let lastPropositions = [];

alloy("sendEvent", {
  renderDecisions: true,
  xdm: {
    web: { webPageDetails: { viewName: "cart" } }
  }
}).then(({ propositions = [] }) => {
  lastPropositions = propositions;
});

// Later, after a UI re-render:
alloy("applyPropositions", {
  propositions: lastPropositions
});

Weitere Informationen finden Sie unter applyPropositions .

NOTE
Der Befehl applyPropositions sendet nicht automatisch Anzeigeereignisse. Wenn Sie „Anzeige“ für Re-Render-Szenarien aufzeichnen müssen, finden Sie weitere Informationen unter Verwalten von Anzeigeereignissen.
recommendation-more-help
1ae86b30-e55e-49c1-ab11-9d0356a5f3e1