Barista: [Champ de filtre] n'affiche pas les suggestions dans MS Edge

Créé le 4 sept. 2020  ·  13Commentaires  ·  Source: dynatrace-oss/barista

Rapport d'erreur


Lorsque vous cliquez dans le champ de filtre dans la version sans chrome de MS Edge, aucune suggestion de filtre n'est affichée. De plus, lors de la saisie, le bouton Effacer tout n'apparaît pas. Au lieu de cela, il y a un "X" plutôt mauvais qui efface l'entrée (voir capture d'écran).

Cela ne se produit que lorsque l'application est compilée avec View Engine au lieu d'Ivy.

Comportement prévisible


Lorsque vous cliquez dans le champ de filtre, les suggestions doivent être affichées dans un composant déroulant, comme dans les autres navigateurs.

Comportement actuel


Cliquer dans le champ de filtre dans MS Edge n'ouvre pas un composant déroulant avec les suggestions de filtre. A la place du menu déroulant, une petite bordure peut être vue (voir capture d'écran).

Étapes pour reproduire


  1. Désactivez Angular Ivy dans le tsconfig de l'application :
  "angularCompilerOptions": {
    "enableIvy": false
  }
  1. Cliquez dans le champ de filtre dans n'importe quelle version non chromée de MS Edge.
  2. Aucune valeur de suggestion n'est affichée

Contexte (Environnement)


Versions utilisées :

  • angulaire : 10.0.9
  • @angulaire/cdk : 10.1.1
  • @dynatrace/barista-components : 8.0.0

Pièces jointes

Strange X au lieu de "tout effacer"

image (5)

Pas de liste déroulante mais bordure visible

image (4)

Comportement attendu Firefox

image (7)

Comportement réel MS Edge

image (6)

bug filter-field has-pr

Commentaire le plus utile

Comme il semble s'agir d'un bug IntersectionObserver pour Edge <=16, je pense actuellement à désactiver la surbrillance pour ces navigateurs. Cela le rendrait au moins utilisable.
Veuillez me faire part de vos réflexions sur cette "solution".

Tous les 13 commentaires

Une enquête sur Edge 16 sur une machine Windows 10 et aucun FilterField n'affiche quoi que ce soit dans la saisie semi-automatique :

image
image

@samuelfahrngruber votre comportement n'est pas reproductible car dans Edge Version 18 la saisie semi-automatique s'affiche correctement.

@lukasholzer Utilisez -vous les échantillons sur https://barista.dynatrace.com/? car ils fonctionnent bien pour moi dans Edge 18 aussi.
Cependant, le problème ne se produit qu'avec la nouvelle version 8.0.0 des composants barista, et les exemples sur https://barista.dynatrace.com/ n'utilisent pas la v8.0.0.

Je ne suis actuellement pas en mesure de créer un exemple local avec le champ de filtre et barista 8.0.0, car je reçois toujours un message d'erreur lors de la création d'un nouveau projet avec uniquement un champ de filtre sur la page :

ERROR in node_modules/@dynatrace/barista-components/button-group/src/button-group.d.ts:35:9 - error TS2611: 'disabled' is defined as a property in class 'HasTabIndex & DtButtonGroupBase', but is overridden here in 'DtButtonGroup<T>' as an accessor.
35     get disabled(): boolean;
           ~~~~~~~~
node_modules/@dynatrace/barista-components/button-group/src/button-group.d.ts:76:9 - error TS2611: 'disabled' is defined as a property in class 'HasTabIndex & CanColor<DtButtonGroupThemePalette> & DtButtonGroupItemBase', but is overridden here in 'DtButtonGroupItem<T>' as an accessor.
76     get disabled(): boolean;
           ~~~~~~~~

Dois-je signaler un autre bogue pour ce problème ?

De plus, je ne peux pas fournir d'exemple de stackblitz car cela ne fonctionne pas du tout avec MS Edge.

EDIT : j'ai créé un bug pour ce problème #1577

Cela semble être un problème avec dt-highlight sur Edge.

Le composant de surbrillance qui est utilisé dans chaque option pour la saisie semi-automatique ne rend pas le texte en surbrillance.

Il semble être lié au « IntersectionObserver » qui est utilisé dans le composant de surbrillance. L'observateur ne tire pas sur le bord après le rendu initial lorsque la superposition s'ouvre et que les premières options deviennent visibles.

Tous les autres navigateurs fonctionnent comme prévu.
Ce qui est étrange, c'est que le IntersectionObserver est supporté depuis Edge 15

Le problème se produit après la mise à jour de la version 7.5.1 à 8.0.0 , auparavant nous n'avions aucun problème.

Je vérifie actuellement si cela est lié d'une manière ou d'une autre au problème #1420 (PR #1433) où cette zone de code a été touchée en dernier.

Comme il semble s'agir d'un bug IntersectionObserver pour Edge <=16, je pense actuellement à désactiver la surbrillance pour ces navigateurs. Cela le rendrait au moins utilisable.
Veuillez me faire part de vos réflexions sur cette "solution".

Cela me semble raisonnable - je vote pour.

Comme il semble s'agir d'un bug IntersectionObserver pour Edge <=16, je pense actuellement à désactiver la surbrillance pour ces navigateurs. Cela le rendrait au moins utilisable.
Veuillez me faire part de vos réflexions sur cette "solution".

Peut-être aussi pour d'autres versions Edge non chromées.
Pour moi, le problème se produit également avec Edge 18.

Version exacte :

Microsoft Edge 44.19041.423.0
Microsoft EdgeHTML 18.19041

Bon point - même dans mes tests.

{browserName : MicrosoftEdge, browserVersion : 44.18362.449.0, javascriptEnabled : true, pageLoadStrategy : normal, plate-forme : WINDOWS, platformName : WINDOWS, setWindowRect : false, délais : {implicite : 0, pageLoad : 300000, script : 30000}, , zal : résolution de l'écran : 1600x1200, zal:tz : Europe/Vienne}

Je me demande pourquoi nous l'avons utilisé si nous n'avons pas le support du navigateur pour cela. 🤔 AFAIK, nous devons prendre en charge toutes les versions Edge ou ?
https://caniuse.com/intersectionobserver

@thomaspink des mises à jour sur ce bogue ?

Après une enquête plus approfondie, le bogue ne se produit que lorsque l'ancien moteur de vue est utilisé à la place d'Ivy.
Reproductible en désactivant Ivy

  "angularCompilerOptions": {
    "enableIvy": false
  }

et en cliquant dans le champ de filtre dans MS Edge.

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