2016-09-08 7 views
0

mein Problem ist folgende: in diesem CodeThymeleaf th Tag in BLC-Tag

<header> 
     <h1 th:utext="${BLC_PAGE.pageFields[menu_name]}"></h1> 
    </header> 

    <blc:menu resultVar="menuItems" menuName="${BLC_PAGE.pageFields[menu_name]}" /> 
    <ul th:if="${not #lists.isEmpty(menuItems)}"> 
     <li th:each="menuItem : ${menuItems}"> 

      <a th:href="@{${menuItem.url}}" th:class="${menuItemStat.first}? 'home'"> 
       <span th:utext="${menuItem.label}"></span> 
      </a> 

     </li> 
    </ul> 

die Linie <h1 th:utext="${BLC_PAGE.pageFields[menu_name]}"></h1> bekommt den Namen des aktuellen Menüs. Ich brauche den Menüname in dieser Zeile <blc:menu resultVar="menuItems" menuName="${BLC_PAGE.pageFields[menu_name]}" />, um das gleiche zu tun, aber "${BLC_PAGE.pageFields[menu_name]}" ist nicht geeignet, wie es von thymeleaf Tags Bibliothek ist. Irgendeine Idee, wie man diesen Wert in blc bekommt: menu tag?

Antwort

1

Um den Thymeleaf-Ausdruck ${BLC_PAGE.pageFields[menu_name]} aufzulösen, müssen Sie ihn wie folgt umhüllen: th:attr="menuName=${BLC_PAGE.pageFields[menu_name]}". Da menuName kein Standard-HTML-Attribut ist, können Sie den Thymeleaf-Namespace nicht einfach zu menuName (d. H. th:menuName) hinzufügen, und ohne den Namespace th: weiß Thymeleaf nicht, dass er Ausdrücke auflösen muss. Das Thymeleaf-Attribut attr ermöglicht die Verwendung nicht standardmäßiger HTML-Attribute mit Thymeleaf. Weitere Informationen zum Festlegen von Attributwerten mit Thymeleaf finden Sie unter their documentation.

Hier sind Links zu den Laub- und Thymeleaf Dokumentation auf Prozessoren und Dialekte:

+1

- Laub-: http://www.broadleafcommerce.com/docs/core/current/Laubblatt-Konzepte/Präsentations-Schicht # Thymoleaf – ProfEidarios

Verwandte Themen