categories
è l'elenco di identificativi per pubblicare un clientlib sotto.
dependencies
dovrebbe causare la pagina per avere le richieste in più per altre clientlibs (esterno "subscribe")
embed
dovrebbe "aggregato" quegli altri clientlibs nel clientlib corrente (interni iscriviti)
entrambe le proprietà può avere più valori e l'interfaccia CRXDE Lite consente di modificare l'ordine degli articoli nella lista valori.
Clientlibs proprio:
- /etc/clientlibs/categorie DEPA = [ "DEPA"]
- /etc/clientlibs/categorie DEPB = [ "DEPB"]
- /etc/clientlibs/categorie DEPC = [ "DEPC"]
- /etc/clientlibs/USEA categorie = [ "USEA"], le dipendenze = [ "DEPA", "DEPB"]
- /etc/clientlibs/useB categorie = [ "useB "], embed = [" depB "," depC "]
Se una pagina utilizza "USEA" <cq:includeClientLib categories="useA"/>
, quindi il codice HTML dovrebbe avere richieste di Depa, DEPB, USEA (attraverso i loro URL appropriati, cioè /etc/clientlibs/depA.css
Se una pagina utilizza dei "useB" <cq:includeClientLib categories="useB"/>
, poi il codice HTML dovrebbe hai solo una richiesta per l'usoB. Il contenuto di /etc/clientlibs/useB.css
sarebbe la concatenazione di contenuti di depB, depC, useB.
Il gestore di libreria in {localhost} /system/console/configMgr/com.day.cq.widget.impl.HtmlLibraryManagerImpl
ha una configurazione di debug per determinare se le richieste sono concatenate EFFETTIVAMENTE. Questo è documentato in http://dev.day.com/docs/en/cq/current/deploying/configuring_osgi.html#par_variable_18
Per definire più dipendenze (supponendo che si sta utilizzando Maven per costruire dal vostro file system ed installare in CQ5), la cartella clientlibs avrà un file ".content.xml" che ha bisogno il seguente attributo:
dependencies="[depB,depC]"
fonte
2012-11-07 17:47:16
Incredibile spiegazione! – Oliver
Tuttavia manca un dettaglio: le dipendenze sono transitive, le incorporazioni non lo sono. Esempi: A dipende da B che incorpora C -> C + B e A sono caricati. Un embed B che dipende da C -> B + A sono caricati, C no. Questo può essere complicato se si desidera incorporare alcune librerie CQ (per richiedere un singolo JS) e tali librerie dipendono da altre librerie CQ. È quindi necessario incorporarli tutti, nell'ordine corretto. –
Dovrei aggiungere che 'categorie' intendono astrarre dalla struttura della directory.Pertanto, NON è utile creare etichette di categorie che essenzialmente imitano le cartelle. –