geoportal-extensions
geoportal-extensions copied to clipboard
Erreur - OpenLayers 7.0.0 - class constructors must be invoked with 'new'
Votre environnement
- Version de l'API : 3.2.14
- OpenLayers : 7.0.0
- Nom du navigateur et sa version : Firefox 104 (+ Chrome et Edge)
- Operating System et sa version (desktop ou mobile) : W10
Type d'issue
- [X] Report de bug
- [ ] Requête d'une nouvelle fonctionnalité
Contexte
Suite au passage à OpenLayers 7.0.0, j'obtiens une erreur dans la console (et pas d'affichage de ma carte). Voici l'erreur :
class constructors must be invoked with 'new'
Pour les bugs : Etapes à suivre pour le reproduire
window.onload = function go() {
var layer_osm = new ol.layer.Tile({
source: new ol.source.OSM({attributions: [
'© A-d-r-i',ol.source.OSM.ATTRIBUTION ]}),
opacity: 1
});
var layer_ortho = new ol.layer.Tile({
source: new ol.source.GeoportalWMTS({layer: "ORTHOIMAGERY.ORTHOPHOTOS"}),
opacity: 0.3
});
var map = new ol.Map({
target: 'map',
layers: [
layer_osm,
layer_ortho
],
target: 'map',
view: new ol.View({
center: ol.proj.transform([2, 47], 'EPSG:4326', 'EPSG:3857'),
zoom: 6
})
});
}
Comportement attendu
Afficher une carte OSM avec un fond ortho de 0.3 d'opacité (fonctionne parfaitement avec OpenLayers 6.9.0)
Comportement actuel
N'affiche pas la carte : page vierge.
Merci pour votre lecture et retours !
Bonjour,
vous êtes certainement notre premier bêta testeur sur ol7 :joy:
Malheureusement, nous n'avons pas encore entrepris les action nécessaires à la mise à niveau de nos API pour qu'elles soient compatibles avec OpenLayers 7. Pour l'instant, nous assurons donc la compatibilité qu'avec OpenLayers 6 (manifestement, il y a quelques problèmes avec ol7).
Nous prévoyons de nous pencher sur la question courant septembre, nous essayerons de communiquer un planning de mise à niveau.
En attendant, n'hésitez pas à nous faire d'autres retours si vous creusez la question et que vous analysez les problèmes rencontrés (issues, ou même PR).
Bonne journée, et merci pour votre retour.
vous êtes certainement notre premier bêta testeur sur ol7
J'imagine bien ! 😂 Merci beaucoup pour votre retour.
Pour quelques détails en plus, les "widgets/contrôles" ne fonctionnent pas non plus (recherche/switcher etc...).
Nous prévoyons de nous pencher sur la question courant septembre, nous essayerons de communiquer un planning de mise à niveau.
Merci pour les infos. Je reste sur OL 6.9 pour ma prod, rien de pressant !
Bonjour,
J'utilise les cartes Geoportail avec openlayers sans le sdk et les extensions geoportail.
Je viens de faire la mise à jour de ol 6.9 à ol 7.2.2 (latest), j'obtiens le même message d'erreur :
class constructors must be invoked with 'new'
.
Il faut revoir les chemins d'import : exemple :
-import CircleStyle from 'ol/src/style/Circle'
+import CircleStyle from 'ol/style/Circle'
Après cela, un build fonctionne sans erreur.
Cordialement,
Eric
Bonjour,
Visiblement, j'ai un problème similaire car j'obtiens le même message d'erreur en utilisant la version 7.4 avec le fichier ol3-sidebar.js
Par contre, je ne comprend pas la réponse précédente de eldk.
Est-ce que quelqu'un pourrait m'expliquer de manière plus détaillée comment résoudre le problème s'il vous plaît?
Je vous remercie pour votre attention et votre compréhension.
Cordialement,
Sofian
Bonjour, pour information nou travaillons à une mise à jour des extensions pour une compatibilité avec OpenLayers 8
Bonjour,
Où en est la compatibilité avec les versions récentes d'OpenLayers? Je ne parviens pas à trouver l'information.
Bonjour,
nous n'avons pour le moment pas communiqué dessus, mais une nouvelle version des extensions Géoplateforme pour OpenLayers est pour le moment disponible en bêta, mais pas encore publiées sur les dépôts. Nous communiquerons plus amplement quand nous estimerons cela pertinent.
Cela dit, il est d'ores et déjà possible de tester cette version qui est publiée sur un nouveau dépôt dédié uniquement aux extensions Géoplateforme pour OpenLayers : https://github.com/IGNF/geopf-extensions-openlayers
La compatibilité est assurée avec OpenLayers 8.
En plus de cette mise à jour de compatibilité avec OpenLayers, cette nouvelle version en cours de développement propose une compilation double :
- Classique (avec le style par défaut)
- DSFR (avec le style du Design System de l'Etat)
Attention : pour utiliser ce style DSFR, il faut que vous entriez dans le périmètre d'application nécessaire : http://www.systeme-de-design.gouv.fr/prise-en-main-et-perimetre/perimetre-d-application/
Merci pour votre réponse !
Les extensions Géoplateforme pour OpenLayers évoluent : nouveau dépôt, nouveau package, nouvelles fonctionnalités.
Compatibles avec OpenLayers 8 et supérieures, elles sont pour l'instant publiées en version bêta (1.0.0-beta.0) et sous la licence AGPL 3.
Le dépôt GitHub : https://github.com/IGNF/geopf-extensions-openlayers Le package NPM : https://www.npmjs.com/package/geopf-...ons-openlayers
Le changelog complet de cette nouvelle version est disponible ici : https://github.com/IGNF/geopf-extens...g/1.0.0-beta.0
On notera en nouveautés :
- un mode de rendu "Classique" et un nouveau mode "DSFR" (Design System de l'Etat) réservé aux sites gouvernementaux (cf https://www.systeme-de-design.gouv.f...-d-application) : voir les différences sur cette page de démo
- un widget "territories" permettant de se centrer sur un territoire voulu
- un widget "catalogue" pour proposer un catalogue de données
- une barre de recherche paramétrable
Les extensions Géoplateforme pour Leaflet et iTowns sont toujours maintenues et disponibles sur ce dépôt : https://github.com/IGNF/geoportal-extensions
Attention, ces extensions sont toujours en version bêta, vouées à évoluer souvent et toujours en développement. Nous avons essayé de mettre à jour la documentation au mieux (voir ici et le README), mais si vous constatez des erreurs, n'hésitez pas à nous les signaler en issue sur le dépôt GitHub.
Bonne journée,
Elias Couppé