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 :

Librarie Require JS passer de Maps à Open street map


Sujet :

JavaScript

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2020
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2020
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Librarie Require JS passer de Maps à Open street map
    Bonjour
    Sur MAgento ils implémentent la librairie require js pour intégrer du javascript.
    Pour mon client j'ai mis en place un plugin que j'ai acheté pour faire du pickup avec initialement Google MAPS
    Mais comme c'est passé payant on aimerai passer sous Open Street map mais c'est la grosse galère.
    Bon alors j'arrive à afficher la map avec les points des magasins mais dès que je veux implementer un plugin de geolocalisation ou autocompletion plus rien ne fonctionne.
    J'ai essayé la librairie open layer et leaflet c'est pareil

    Bon avec open layers voila ce que je fais et là j'ai toujous ol is undefined je n'arrive pas à voir pourquoi

    dans mon requiejs-config.js :
    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
    var config = {
        "map": {
            "*": {
     
                "storeLocatorMap": "Magedelight_LocatorAndPickup/js/storelocatormap",
                "mdMapWidget": "Magedelight_LocatorAndPickup/js/map3"
            }
        },
        config: {
            mixins: {
                'Magento_Checkout/js/view/shipping': {
                    'Magedelight_LocatorAndPickup/js/view/shipping-mixin': true
                },
                'Magento_Checkout/js/model/shipping-save-processor/payload-extender': {
                    'Magedelight_LocatorAndPickup/js/model/shipping-save-processor/store-pickup-payload-extender': true
                }
            }
        },
        paths: {
            'openlayer': 'https://cdn.jsdelivr.net/gh/openlayers/openlayers.github.io@master/en/v6.3.1/build/ol'
        },
        shim: {
            'openlayer': {
                exports : 'ol'
            }
     
        }
    };

    et dans mon map3.js

    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
    define([
        'jquery',
        'Magento_Ui/js/modal/modal',
        'jquery/ui',
        'Magedelight_LocatorAndPickup/js/marker',
        'domReady!',
        'openlayer'
    ], function($,modal,ol){
        "use strict";
     
          var map = new ol.Map({
                    target: 'map',
                    layers: [
                      new ol.layer.Tile({
                        source: new ol.source.OSM()
                      })
                    ],
                    view: new ol.View({
                      center: ol.proj.fromLonLat([37.41, 8.82]),
                      zoom: 4
                    })
                  });
    })

  2. #2
    Modérateur

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

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 056
    Points : 44 575
    Points
    44 575
    Par défaut
    Bonjour et bienvenue sur DVP.

    Il te faut respecter l'ordre de tes « define  »dans la récupération des paramètres (arguments) dans ta fonction.
    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
    define([
      "un",
      "deux",
      "trois",
      "quatre",
      "openlayer",
      "domReady!"
    ], function (u, d, t, q, ol) {
      "use strict";
      var map = new ol.Map({
        target: 'map',
        layers: [
          new ol.layer.Tile({
            source: new ol.source.OSM()
          })
        ],
        view: new ol.View({
          center: ol.proj.fromLonLat([37.41, 8.82]),
          zoom: 4
        })
      });
    })

Discussions similaires

  1. Carte détourée - Possible via Google Maps ou Open Street Map
    Par apprenti46 dans le forum SIG : Système d'information Géographique
    Réponses: 0
    Dernier message: 14/11/2014, 21h55
  2. [LIVRE] Manuel Open Street Map
    Par zoom61 dans le forum Logiciels Libres & Open Source
    Réponses: 0
    Dernier message: 05/09/2013, 13h35
  3. Composant Open Street Map ou ActiveX
    Par Stephpag dans le forum API, COM et SDKs
    Réponses: 6
    Dernier message: 19/11/2012, 10h26

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