-1
votes

Action à l'intérieur de la balise Li n'est pas déclenchée parfois dans Ember JS 1.10

J'ai plusieurs onglets dans ma page qui pointent sur des itinéraires internes. Lorsqu'un utilisateur clique sur un onglet, l'itinéraire doit être rendu et que l'onglet doit également être mis en surbrillance, mais une fois en quelques clics, la surbrillance ne se déplace pas sur la nouvelle onglet et l'ancienne onglet reste en surbrillance mais la route de l'onglet Clic est rendu.

La surbrillance est effectuée par une action à l'intérieur de la balise LI et le # link-to est imbriqué à l'intérieur de la balise Li.

Dans mon enquête jusqu'à présent, ce que j'ai trouvé, c'est que le moment où cela se produit Cliquez sur l'événement n'est pas enregistré. Je reçois un tas d'événements de souris mais pas d'événement de clic. On dirait que l'événement de clic est mangé. xxx

L'action doit être déclenchée toutes les heures lorsqu'un onglet est cliqué et que le nouvel onglet doit être mis en surbrillance.


0 commentaires

3 Réponses :


0
votes

Essayez de faire quelque chose comme ça à la place:

{{#link-to tab.link tagName='li'}}click me{{/link-to}}


0 commentaires

0
votes

Le {{link-to}} L'assistant rend un lien qui obtiendra un supplémentaire = "actif" si le lien correspond à l'itinéraire actuel. Vous pouvez ensuite styler ceci par CSS.

voir https: //Guides.emberjs .COM / V1.10.0 / Modèles / Liens / et recherche "Active".

Autres options

depuis le {{link-to}} déclenchera l'onglet onglet. / code> de l'itinéraire Beforemodel Crochet, peut-être que c'est l'endroit que vous souhaiterez peut-être définir les propriétés liées à la vue pour être "Données" le

  • . Je réserverais personnellement ce crochet pour la logique commerciale.

    Lorsque j'ai absolument besoin de déclencher une action avant de transition (généralement, c'est quand je veux tirer quelque chose comme un événement de suivi), j'utilise le Invokeaction Action de fermeture fournie avec le Ember-link-action Addon Bien que cela semble ne peut supporter que 1.13.13 xxx

    meilleure pratique

    pour l'action dans le

  • Elément Vous souhaitez généralement éviter de définir des actions sur des éléments non interactifs car cela crée une préoccupation d'accessibilité pour les utilisateurs de la technologie d'assistance (voir NON-INVALID-INTERACTIVE ).

    Cependant , cela ne signifie pas que vous devriez tourner le

  • dans un élément interactif en faisant quelque chose de lien
  • Comme cela enfreint davantage de préoccupations A11Y (voir non imbriqué-interactif ).

  • 0 commentaires

    -2
    votes

    J'ai trouvé une solution qui n'implique pas d'actions:

    <ul class="nav nav-tabs">
        {{#each tab in tabs}}
            {{#link-to tab.link id=tab.id tagName='li' }}<a>{{tab.title}}</a>{{/link-to}}
        {{/each}}
    </ul>
    


    0 commentaires