zoukankan      html  css  js  c++  java
  • ArcGIS API for JavaScript开发初探——HelloMap

    1、前言 

    在开始ArcGIS API for JavaScript开发之前我们需要了解一些基本的知识:

    1、开发工具选什么?

    前端技术的开发工具选择是一个仁者见仁智者见智的问题,有人喜欢Hbuilder,有人喜欢Sublime Text,notepad++,也有人喜欢直接在写字板写代码。还有很多功能更全面的集成开发环境,全凭个人喜好,这里笔者推荐使用Hbuilder,代码提示很给力,熟悉了快捷键后写代码也比较效率。

    2、AMD规范

    本教程展示了如何使用ArcGIS API的模块,其中JavaScript使用异步模块定义(AMD)。AMD规范代码和原始代码之间的主要区别是如何加载模块(require() vs. dojo.require()) ,以及类的模块引用(全局变量用于原始代码,而AMD样式代码使用局部变量)。具体区别可参照参考链接中的教程原始英文版本。

    3、Dojo框架

    ArcGIS API for JavaScript 基于Dojo框架搭建,所以学习 ArcGIS JavaScript API 需要对Dojo框架有一定的了解。

    2、建立第一个应用程序HelloWord

    2.1 、创建一个简单的HTML文档

    首先我们先创建一个简单的Html文档,具体事例如下图:

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="utf-8">
            <title>HelloWord</title>
        </head>
        <body>
        </body>
    </html>

    2.2、引用的ArcGIS API JavaScript

    要开始使用ArcGIS API为JavaScript工作,添加下面的脚本和链接到<head>标签中:

    <link rel="stylesheet" href="http://js.arcgis.com/3.12/esri/css/esri.css">
    <script src="http://js.arcgis.com/3.12/"></script>

    script标签加载的ArcGIS API为JavaScript库。当新的JavaScript API的版本发布时,可更到新的版本号以匹配新版本的API。

    esri.css样式表中包含特定于ESRI的部件和组件的样式。有关这个样式表的详细信息,请参阅上的帮助主题所需的CSS

    对于各种不同的主题样式表的URL如下:

    http://js.arcgis.com/3.12/dijit/themes/claro/claro.css
    http://js.arcgis.com/3.12/dijit/themes/tundra/tundra.css
    http://js.arcgis.com/3.12/dijit/themes/nihilo/nihilo.css
    http://js.arcgis.com/3.12/dijit/themes/soria/soria.css

    2.3、加载模块

    添加<SCRIPT>标签并API加载指定的模块。JavaScript代码将直接在其内部增加。

    <script>
        require(["esri/map"], function(Map) { ... });
    </script>

    2.4、确保DOM是可用

    使用dojo/ domready确保执行任何代码之前DOM是可用的。一旦DOM是可用的,则该函数传递给 require()将运行。该函数的代码会创建地图并添加底图。

     <script>
        require(["esri/map", "dojo/domReady!"], function(Map) { 
          // code to create the map and add a basemap will go here 
        });
      </script>

    2.5、创建地图

    通过加载esri/map模块的Map类,可用创建一个新的地图。“mapDiv”字符作为包含了地图的div元素的id号被传给Map。并指定其他地图的属性,如底图和起始中心点和缩放级别,在地图初始化的构造函数中。

    var map ; 
      require ([ "esri/map" ,  "dojo/domReady!" ], function ( Map )  {  
         map =  new  Map ( "mapDiv" ,  { 
          center :  [- 56.049 ,  38.485 ], 
          zoom :  3 , 
          basemap :  "streets" 
        }); 
      });

    其他底图选项是:"satellite", "hybrid", "topo", "gray", "oceans", "osm", "national-geographic"。可通过沙箱修改底图来替换不同的底图。查看附加的地图选项来查看地图类的更多细节。

    2.6、定义页面内容

    现在JavaScript已经在某一位置创建了地图,下一步是添加相关的HTML。此示例中,HTML页面是非常简单的:主体标记,它定义了浏览器中可见的内容,并且单个div元素将在被创建的地图主体中。

    <body class="claro">
        <div id="mapDiv"></div>
    </body>

    2.7、页面设计

    在本教程中,地图需要填充浏览器窗口。为了达到这一效果,需要早页面<head>标记中添加以下的CSS :

     <style>
        html, body, #mapDiv {
          padding: 0;
          margin: 0;
          height: 100%;    }
      </style> 

    2.8、完整页面代码

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="utf-8">
            <title>HelloWord</title>
            <link rel="stylesheet" href="http://js.arcgis.com/3.12/esri/css/esri.css">
            <script src="http://js.arcgis.com/3.12/"></script>
            <script>
                  var map ; 
                  require ([ "esri/map" ,  "dojo/domReady!" ], function ( Map )  {  
                     map =  new  Map ( "mapDiv" ,  { 
                      center :  [- 56.049 ,  38.485 ], 
                      zoom :  3 , 
                      basemap :  "streets" 
                    }); 
                  });
            </script>
            <style>
                html, body, #mapDiv {
                  padding: 0;
                  margin: 0;
                  height: 100%;    }
            </style>  
        </head>
        <body>
            <div id="mapDiv"></div>
        </body>
    </html>

    3、参考链接

    https://developers.arcgis.com/javascript/jshelp/intro_firstmap_amd.html

    https://developers.arcgis.com/javascript/jshelp/intro_firstmap.html

  • 相关阅读:
    23个精美的的国外网站设计作品推荐欣赏
    javascript / js数据类型,数据类型转换
    让人兴奋的视差滚动(Parallax Scrolling)效果网站分享
    手机网页应用的交互设计
    qq空间等闪动的文字怎么做?
    用CSS实现首字下沉效果,仿word的首字下沉
    35 套精美的 PSD 图标素材,网页素材下载
    使用纯CSS实现圆角边框并完美兼容
    推荐给 JavaScript 开发者十款超级有用的工具来提高客户体验
    40款非常漂亮的 HTML5 & CSS3 网站模板免费下载欣赏
  • 原文地址:https://www.cnblogs.com/gis-luq/p/4269375.html
Copyright © 2011-2022 走看看