Angular.js: Envisagez d'ajouter la prise en charge des écouteurs d'événements passifs

Créé le 7 avr. 2017  ·  4Commentaires  ·  Source: angular/angular.js

Je soumets un...

  • [x] rapport de bogue
  • [ ] demande de fonctionnalité
  • [ ] autre (Veuillez ne pas envoyer de demandes d'assistance ici (voir ci-dessus))

Comportement actuel :
Ajout d'un écouteur d'événement non passif à un événement 'touchmove' bloquant le défilement. Envisagez de marquer le gestionnaire d'événements comme "passif" pour rendre la page plus réactive.

Comportement attendu / nouveau :
Les écouteurs d'événements passifs sont une nouvelle fonctionnalité de la spécification DOM qui permet aux développeurs d'opter pour de meilleures performances de défilement en éliminant le besoin de faire défiler pour bloquer les écouteurs d'événements tactiles et à molette. Les développeurs peuvent annoter les écouteurs tactiles et roulants avec {passif : vrai} pour indiquer qu'ils n'invoqueront jamais preventDefault. Cette fonctionnalité a été livrée dans Chrome 51, Firefox 49 et a atterri dans WebKit. Pour une explication officielle complète, lisez plus ici.

Reproduction minimale du problème avec instructions :

Version angulaire : 1.6.4

Navigateur : Chrome 59

Rien d'autre:
http://stackoverflow.com/questions/39152877/consider-marking-event-handler-as-passive-to-make-the-page-more-responsive

misc core moderate won't fix inconvenient feature

Commentaire le plus utile

Salut, merci pour la suggestion. Ce comportement est dans la spécification (https://dom.spec.whatwg.org/#dictdef-eventlisteneroptions), mais le support manque dans IE / Edge et Safari. Je suppose que nous pourrions faire une exception ici, puisque l'objet options est ignoré par les navigateurs qui ne le supportent pas, est-ce correct ?

Tous les 4 commentaires

Salut, merci pour la suggestion. Ce comportement est dans la spécification (https://dom.spec.whatwg.org/#dictdef-eventlisteneroptions), mais le support manque dans IE / Edge et Safari. Je suppose que nous pourrions faire une exception ici, puisque l'objet options est ignoré par les navigateurs qui ne le supportent pas, est-ce correct ?

Vous avez raison!

L'objet peut être ignoré, mais il se résoudra à une valeur de vérité pour les navigateurs qui ne prennent pas en charge l'objet options, qui définit le useCapture sur vrai.

Sur la base de ce commentaire https://github.com/angular/angular.js/pull/16026#issuecomment -305763416, il s'agit d'une habitude dans un avenir prévisible

Cette page vous a été utile?
0 / 5 - 0 notes