Highcharts: Erreur lors du rendu des camemberts vides après la mise à niveau vers 8.1.1

Créé le 14 juin 2020  ·  22Commentaires  ·  Source: highcharts/highcharts

Comportement attendu

Un graphique à secteurs vide s'affiche sans erreur.

Comportement réel

Une erreur apparaît :
ReferenceError: Highcharts is not defined
https://github.com/highcharts/highcharts/blob/decfc3ab47ec88e28472f065fd2454b46c9f1fd1/js/parts/PieSeries.js#L789

Démo en direct avec étapes à reproduire

https://codesandbox.io/s/highcharts-vue-demo-ye65e

Version de produit

8.1.1

Navigateur(s) concerné(s)

Tout

Done Regression

Commentaire le plus utile

Confirmez que c'est toujours un problème pour moi aussi dans 8.1.2

https://stackblitz.com/edit/angular-ivy-udtk3a?file=package.json

Tous les 22 commentaires

Tous les camemberts dynamiques initialisés vides et remplis plus tard de données, de manière asynchrone, sont cassés par la mise à jour de 8.1.0 à 8.1.1

Salut @pablolmedorado et @clemeno
Merci d'avoir signalé le problème!

Il semble que le problème concerne uniquement la dernière version et qu'il est lié à tous les wrappers. En fait, il est déjà corrigé sur la branche master , car après avoir placé la dernière version de master dans l'exemple codesandbox et remplacé les versions de Highcharts, le problème semble disparaître.
En résumé, nous devons publier une nouvelle version dans les prochains jours, et ce problème sera automatiquement résolu.

Exemple en direct : https://codesandbox.io/s/highcharts-vue-demo-61e0v

Sincères amitiés!

Ce problème semble toujours être présent dans la version publiée de 8.1.2, au moins dans celle publiée dans npm.

Problème de réouverture.

@ bre1470 - pouvez-vous le vérifier ? #13681 est fermé, mais il semble que l'espace Highcharts noms https://codesandbox.io/s/highcharts-vue-demo-5o9qu?file=/package.json

Confirmez que c'est toujours un problème pour moi aussi dans 8.1.2

https://stackblitz.com/edit/angular-ivy-udtk3a?file=package.json

Dans deux scénarios, il est reproduit :

  1. Lorsque series.data est vide
  2. Lorsque tout l'axe des y dans les données est 0

Curieux de connaître les solutions de contournement jusqu'à ce qu'un correctif soit publié. En utilisant le lien repro l » @pawelfus et

Curieux de connaître les solutions de contournement jusqu'à ce qu'un correctif soit publié. En utilisant le lien repro l » @pawelfus et

Dans notre cas, le problème a été déclenché en créant un graphique sans données, puis en ajoutant les données plus tard. En l'occurrence, nous avions déjà les données à ce moment-là et nous pouvions donc créer le graphique avec des données, évitant ainsi le problème. Si c'est une option pour vous, ça vaut le coup d'oeil.

@kennyjwilli S'il y a des changements depuis la 8.1.0 dont vous souhaitez profiter, vous pouvez également envelopper la méthode drawEmpty comme ceci :

// Workaround for https://github.com/highcharts/highcharts/issues/13710
(function(H) {
  H.seriesTypes.pie.prototype.drawEmpty = function() {
    var centerX,
      centerY,
      start = this.startAngleRad,
      end = this.endAngleRad,
      options = this.options;
    // Draw auxiliary graph if there're no visible points.
    if (this.total === 0) {
      centerX = this.center[0];
      centerY = this.center[1];
      if (!this.graph) {
        this.graph = this.chart.renderer
          .arc(centerX, centerY, this.center[1] / 2, 0, start, end)
          .addClass("highcharts-empty-series")
          .add(this.group);
      }
      this.graph.attr({
        d: H.SVGRenderer.prototype.symbols.arc(
          centerX,
          centerY,
          this.center[2] / 2,
          0,
          {
            start: start,
            end: end,
            innerR: this.center[3] / 2
          }
        )
      });
      if (!this.chart.styledMode) {
        this.graph.attr({
          "stroke-width": options.borderWidth,
          fill: options.fillColor || "none",
          stroke: options.color || "#cccccc"
        });
      }
    } else if (this.graph) {
      // Destroy the graph object.
      this.graph = this.graph.destroy();
    }
  }
})(Highcharts);

Exemple de travail sur codesandbox.io

Sinon, nous suggérons d'utiliser 8.1.0 pour le moment.

Je suppose que le correctif #13770 ne traite pas #13722

Avoir fourni une démo pour reproduire le problème dans #13722
La ligne suivante est la source de ce problème.
https://github.com/highcharts/highcharts/blob/c7e1976467a3b0e1620d44a414af2470716732b9/js/parts/ColumnSeries.js#L571

Cela m'arrive toujours dans la 2.7.0

https://stackblitz.com/edit/angular-ivy-2zlkmm

Salut @Crocsx - ce correctif n'est pas publié. La prochaine sortie est prévue le mois prochain. Pour l'instant, vous devez soit rétrograder, soit utiliser workaorund publié ici : https://github.com/highcharts/highcharts/issues/13710#issuecomment -650014654

PS : la version actuelle de Highcharts est la v8.1.2

ah bon mon mauvais désolé, j'ai confondu avec la mise à jour highchart-angular, je n'ai pas vu que ce highchart était toujours en 8.1.2, désolé

Salut @Crocsx - ce correctif n'est pas publié. La prochaine sortie est prévue le mois prochain. Pour l'instant, vous devez soit rétrograder, soit utiliser le workaorund publié ici : #13710 (commentaire)

PS : la version actuelle de Highcharts est la v8.1.2

@pawelfus avez-vous une date pour la prochaine sortie ?

On cible la semaine prochaine @felipemfp

J'ai rencontré un problème similaire. Après avoir cliqué sur la légende, les autres données étaient 0. Merci !
"highcharts": "^8.2.0",

Salut @the-gc - Je n'arrive pas à recréer le problème dans la v8.2.0, jetez un œil : https://jsfiddle.net/BlackLabel/ncpL97eq/ - pourriez-vous mettre à jour ma démo ? Merci!

Je peux confirmer que la mise à jour vers highcharts 8.2.0 a résolu le problème pour nous.

Merci!

Idem ici, fonctionne bien

Salut @pawelfus - Le projet a été reconstruit aujourd'hui et le problème a été résolu, merci beaucoup !

Merci pour la confirmation!

Cela m'arrivait également car il y avait plusieurs versions de highcharts dans mon fichier yarn.lock . Une fois consolidé (le 8.2.0), le crash a disparu.

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