Suite

OpenLayers 3 : « goog n'est pas défini »

OpenLayers 3 : « goog n'est pas défini »


Première utilisation d'OpenLayers. Je reçois une erreur "goog n'est pas défini". Voici les étapes que j'ai effectuées :

  1. Téléchargé et décompressé v3.0.0-gamma.4
  2. Il a créé la structure de répertoires suivante :

    • apidoc
    • construire
    • fermeture-bibliothèque
    • css
    • doc
    • exemples
    • vieux
    • Ressources
  3. Je crée un fichier appelé ol3.html et le place dans le dossier d'exemples ci-dessus. Voici le code de ce fichier :

      Exemple OpenLayers 3  

Ma carte

  1. Lorsque je charge la page, j'obtiens l'erreur "goog n'est pas défini". Je peux voir qu'il trouve le local ol.js mais cela donne l'erreur "goog n'est pas défini".

  2. Si je change cette ligne :

    Pour ça:

Ensuite, tout va bien et je peux voir la carte. Qu'est-ce que je rate?


Vous devez prendre le fichier ol.js du répertoire de construction. Cela signifie "… /build/ol.js".

Il existe également un fichier "ol-debug.js", qui contient une version non compressée de ol3.


Ce phénomène est causé par le style de codage d'OpenLayers 3. OL3 est construit avec la bibliothèque de fermeture de Google, ce qui facilite le processus de développement et offre un très bon taux de compression au code final (il y a peut-être d'autres avantages que je ne connais pas à propos de). La fermeture a modulairegoogDes classes. La bibliothèque s'en débarrasse lorsque le code final est compilé et compressé (c'est-à-dire construit).

Pour cette raison, il existe deux façons d'utiliser OL3 :

  • Utilisez la bibliothèque compilée duconstruiredossier, comme @Simon Zyx mentionné (plus rapide, recommandé pour le déploiement).
  • Incluez les fichiers de script appropriés de la bibliothèque de fermeture avec le code intégré, par ex.(plus lent, recommandé pour le développement et les tests).

Voir la vidéo: OpenLayers Introduction for Beginners