IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Récupération d'une variable issue d'une classe


Sujet :

JavaScript

  1. #1
    Membre régulier
    Homme Profil pro
    Enseignant
    Inscrit en
    Novembre 2018
    Messages
    143
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Novembre 2018
    Messages : 143
    Points : 79
    Points
    79
    Par défaut Récupération d'une variable issue d'une classe
    Bonjour,

    J'ai ce code, j'aimerais condenser dans une classe tous les éléments permettant d'initialiser une carte faite avec Maplibre.

    J'aimerais récupérer this._map mais cela ne fonctionne pas. Comment faire ?

    Code 1:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    export class Map {
        constructor({target = " ",center = [], map='', zoom = " ", pitch = " ", bearing = " ", maxZoom = " ", withDem = true, withGeocoder = true, withUrlPos = true, token=''}) {
            this._target = target;
            this._center = center;
            this._zoom = zoom;
            this._pitch = pitch; 
            this._bearing = bearing;
            this._maxZoom = maxZoom;
            this._withDem = withDem,
            this._withGeocoder = withGeocoder,
            this._withUrlPos = withUrlPos,
            this._token = token
        }
     
        onAdd(){       
            this._div = document.createElement('div');
            this._div.id = "free-map";
     
            this._container = document.getElementById(this._target);
            this._container.appendChild(this._map);
     
            this._map = new maplibregl.Map({
                container: "free-map", 
                style:"https://api.maptiler.com/maps/bright/style.json?key="+token,
                center: this._center, // starting position [lng, lat]
                zoom: this._zoom, // starting zoom
                pitch: 0,
                bearing: 0,
                maxPitch: 80,
                maxZoom: 22
            })
     
            this._map.addControl(new maplibregl.NavigationControl());
     
            if(this._withDem === true){
                this.getDem(this._map);
            }
     
            if(this._withUrlPos === true){
                this.getUrlPosition(this._map);
            }
     
            if(this._withGeocoder === true){
                this.getGeocoder(this._map);
            }
     
            this._container = document.getElementById(this._target);
            this._container.appendChild(this._div);
     
            return this._map;

  2. #2
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 052
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 052
    Points : 44 575
    Points
    44 575
    Par défaut
    Bonjour,
    J'aimerais récupérer this._map mais cela ne fonctionne pas.
    oui mais où, quand comment ?

    Cette propriété de ta classe est disponible avec instanceDeLaClasse._map.

    Au passage ta ligne 20 est plus qu'étrange :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    this._container.appendChild(this._map);
    ... this._map n'étant pas encore défini et n'étant pas un élément HTML !

  3. #3
    Membre régulier
    Homme Profil pro
    Enseignant
    Inscrit en
    Novembre 2018
    Messages
    143
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Novembre 2018
    Messages : 143
    Points : 79
    Points
    79
    Par défaut
    Effectivement, il y a un truc bizarre dans le code que j'ai fourni.

    Je refaçonné le code pour qu'il renvoie la variable map (et non pas this._map, ni une div).

    Merci pour votre aide

    Sylvain

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Stocker la valeur d'une variable issue d'une classe B dans une classe C
    Par hadrien4789 dans le forum Débuter avec Java
    Réponses: 14
    Dernier message: 06/06/2019, 10h28
  2. Réponses: 3
    Dernier message: 12/10/2005, 09h23
  3. [FLASH MX2004] [AS2] Accès aux variables d'une classe
    Par stailer dans le forum ActionScript 1 & ActionScript 2
    Réponses: 2
    Dernier message: 17/07/2005, 12h58
  4. Variables globales dans une classe
    Par vanitom dans le forum C++
    Réponses: 16
    Dernier message: 14/01/2005, 14h40
  5. Variable d'une Classe Ancêtre
    Par Génie dans le forum Langage
    Réponses: 3
    Dernier message: 18/09/2002, 19h24

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo