Show Menu
ARGOMENTI×

Sideloading componente

Panoramica

Il sideloading dei componenti di Communities è utile quando una pagina Web è progettata come un'app semplice a pagina singola che modifica dinamicamente ciò che viene visualizzato a seconda di ciò che è selezionato dal visitatore del sito.
Questo si ottiene quando i componenti Community non esistono nel modello di pagina, ma vengono aggiunti dinamicamente dopo la selezione di un visitatore del sito.
Poiché il framework dei componenti social (SCF) ha una presenza leggera, vengono registrati solo i componenti SCF esistenti al momento del caricamento iniziale della pagina. Affinché un componente SCF aggiunto in modo dinamico possa essere registrato dopo il caricamento della pagina, è necessario richiamare SCF per "trasferire localmente" il componente.
Quando una pagina è progettata per trasferire localmente componenti di Communities, è possibile memorizzare nella cache l’intera pagina.
I passaggi per aggiungere dinamicamente i componenti SCF sono i seguenti:
  1. Ricaricare localmente il componente utilizzando uno dei due metodi seguenti:
Il sideloading delle risorse Aggiunta o inclusione di un componente Community non esistenti non è supportato.

Aggiunta dinamica di un componente a DOM

Sia che il componente sia incluso in modo dinamico o caricato in modo dinamico, deve prima essere aggiunto al DOM.
Quando aggiungete il componente SCF, il tag più comune da usare è il tag DIV, ma possono essere utilizzati anche altri tag. Poiché SCF esamina il DOM solo quando la pagina viene inizialmente caricata, l’aggiunta al DOM passerà inosservata fino a quando SCF non viene richiamato in modo esplicito.
Qualsiasi tag viene utilizzato, come minimo, l'elemento deve essere conforme al normale pattern dell'elemento principale SCF, contenente i due attributi seguenti:
  • data-component-id
    Percorso effettivo del componente aggiunto.
  • data-scf-component
    Il resourceType del componente.
Esempio di un componente per commenti aggiunto:
<div
    class="scf-commentsystem scf translation-commentsystem"
    data-component-id="<%= currentPage.getPath()%>/jcr:content/content-left/comments"
    data-scf-component="social/commons/components/hbs/comments"
>
</div>

Trasferimento locale tramite chiamata SCF

Inclusione dinamica

L’inclusione dinamica utilizza una richiesta boostrap che consente a SCF di esaminare il DOM e avviare il rapping di tutti i componenti SCF presenti nella pagina.
Per inizializzare i componenti SCF in qualsiasi momento dopo il caricamento della pagina, è sufficiente attivare un evento JQuery come indicato di seguito:
$(document).trigger(SCF.events.BOOTSTRAP_REQUEST);

Caricamento dinamico

Il caricamento dinamico consente di controllare il caricamento dei componenti SCF.
Invece di avviare tutti i componenti SCF presenti nel DOM, è possibile specificare un componente SCF specifico da caricare utilizzando questo metodo JavaScript:
SCF.addComponent(document.getElementById(*someId*));
Dove someId è il valore dell' data-component-id attributo.