Prüfe, ob ui: insert im Template-Client definiert wurde

8

Ich frage mich, ob es möglich ist zu wissen, ob ui:insert in ui:composition definiert wurde. Ich weiß, dass ich es mit separaten ui:param machen kann, aber wollte es einfach ohne, um es einfach und weniger fehleranfällig zu halten.

Beispiel:

Vorlage

%Vor%

Seite 1

%Vor%

Seite 2

%Vor%     
Alexandre Lavoie 27.09.2014, 02:31
quelle

1 Antwort

10

ui:param ist für mich der beste Weg zu gehen. Es ist nur eine Frage der richtigen Verwendung. Als einfaches Beispiel definiere ich hier einen Parameter, um anzugeben, ob es eine Seitenleiste gibt oder nicht. Denken Sie daran, dass Sie eine Standard-Einfügedefinition in der Vorlage definieren können, also deklarieren Sie sie einfach in:

template.xhtml

%Vor%

Dann ein paar Ansichten hier, eine mit der Seitenleiste und die andere ohne Seitenleiste. Sie können es testen und sehen, wie sich der Stil im Browser ändert. Sie werden feststellen, dass es für #{noSideBar} im zweiten Wert keinen Wert gibt, der in jeder EL bedingten Anweisung als false ausgewertet wird.

page1.xhtml

%Vor%

page2.xhtml

%Vor%

Auf diese Weise müssen Sie sich nur darum kümmern, die Seitenleiste in die Client-Ansicht aufzunehmen.

    
Xtreme Biker 29.09.2014 15:08
quelle

Tags und Links