Ich bin mir nicht 100% sicher, aber Routen werden wahrscheinlich einmal gebaut und wiederverwendet, zumindest die, die Teil des Navigationsmodells sind (nav === true
). Das würde bedeuten, dass Sie keinen dynamischen Ausdruck für nav
verwenden können, da dieser nur einmal verarbeitet würde.
Wenn Sie dies nur zum Anzeigen der Route in der Navigationsleiste benötigen, können Sie eine Problemumgehung mit settings
property erstellen, um die Route irgendwie zu markieren und die Zustandsprüfung beim Erstellen der Navigationsleiste durchzuführen.
{
route: 'aRoute',
moduleId: 'modules/something/mySite,
nav: true,
title: 'mySite',
settings: { occasionallyVisible: true } // add your own properties here...
}
verwendete ich settings.occasionallyVisible
Eigenschaft, aber Sie können hinzufügen, was Sie wollen.
<li repeat.for="route of router.navigation"
if.bind="!route.settings || !route.settings.occasionallyVisible || cond">
<a href.bind="route.href">${route.title}</a>
</li>
Navigationsroute wird angezeigt, wenn es nicht settings
Eigenschaft hat OR settings.occasionallyVisible
ist falsy OR cond
ist true
. Natürlich wäre cond
dieser Zustand, den Sie brauchen.
nicht so elegant, aber es sollte die Arbeit erledigen, bis Sie die bessere Antwort bekommen :)
Haben Sie das Problem gelöst? Ich treffe das selbe jetzt. – sibi