2014-06-25 4 views
0

J'ai une liste en angle d'environ 40 éléments utilisant ng-repeat. Pour le premier élément du tableau, je dois l'empêcher de créer des liens n'importe où si on clique dessus. J'ai donc utilisé ce ng-href pour évaluer l'index, puis le lier à la bonne page de détails.Angulaire: Avoir un lien si l'index est supérieur à 0

ng-href="{{(0 < $index) ? 'index.html#/detail/' + item.id : ''}}" 

fonctionne très bien sur la charge, mais quand je fais défiler loin de la liste, le premier élément prend en fait le lien de l'élément précédemment visité. Y a-t-il quelque chose qui ne va pas avec l'express? Ou y a-t-il une meilleure façon de le faire?

Toute aide est appréciée.

Here is a demo, si vous cliquez sur le premier élément, le lien sera désactivé, mais si vous faites défiler vers le bas, puis revenir en haut, le premier élément aimerons le déjà visité un

+0

Une meilleure utilisation '$ en premier? ... '. Cet extrait semble correct. Le problème peut être ailleurs. Êtes-vous en train de muter la liste? –

+0

Ouais '$ first' pourrait fonctionner, je n'y ai pas pensé. Seule la manipulation en cours est CSS en fonction de si elle est dans la fenêtre – mhartington

+0

Cela fonctionne pour moi: [http://jsbin.com/dufik/1/edit?html,js,output](http://jsbin.com/ dufik/1/edit? html, js, output) – gtramontina

Répondre

1

J'ai une réponse mais Je ne peux pas te dire pourquoi. Si vous modifiez le ng-href en href cela fonctionnera. Il semble que la directive ionique fasse quelque chose de bizarre avec tout ce qui pourrait entrer dans la fenêtre d'affichage et ne se met pas correctement à jour.

http://codepen.io/anon/pen/KolkD

<a class="item my-item item-thumbnail-left" 
       collection-repeat="pet in pets" 
       collection-item-height="90" 
       collection-item-width="'100%'" 
       href="{{(0 < $index) ? '#/detail/' + pet.id : ''}}" 

       > 
+0

Si étrange, je vais devoir en informer les développeurs ... Merci pour l'aide – mhartington

+0

Pas de problème. Si vous découvrez pourquoi ou postez un rapport de bogue, veuillez poster le lien, je serais intéressé par les détails. – lucuma

+1

Ouvert et émetteur pour cela sur github. https://github.com/driftyco/ionic/issues/1674 – mhartington

Questions connexes