zoukankan      html  css  js  c++  java
  • 初始化webgis项目

    1.技术路线

    • 前端:vue+sass+axios+webpack
    • 数据接口:node
    • 地图接口:ArcGIS Server
    • 数据库:Sql Server

    2.配置本地SDK 4.10和ArcGIS API 4.10

    2.1 部署nginx

    • 下载nginx

    • 进入解压后文件夹(nginx.exe所在文件夹),输入cmd命令start nginx启动nginx

    2.2 下载SDK和API

    • 百度网盘,提取码(cqlb)

    • 将解压后的arcgis_js_v410_sdk下的sdk文件夹,和arcgis_js_v410_api文件夹中的arcgis_js_api放入nginx文件夹的html中

    2.3 修改文件

    • 修改nginx配置文件conf/nginx.conf
           location /arcgis_js_api {
               root  html;
               add_header	'Access-Control-Allow-Origin' '*';
           }
           location /arcgis_js_sdk {
               root  html;
               add_header	'Access-Control-Allow-Origin' '*';
           }
    
    
    • 修改API地址文件

      • 修改 文件arcgis_js_apilibrary4.10init.js

        [HOSTNAME_AND_PATH_TO_JSAPI]替换成localhost:8080/arcgis_js_api/library/4.10/

      • 修改文件:arcgis_js_apilibrary4.10dojodojo.js

        [HOSTNAME_AND_PATH_TO_JSAPI]替换成localhost:8080/arcgis_js_api/library/4.10/

    3 初始化Vue项目

    3.1 准备

    • 安装 node
    • 安装 vue: npm install vue -g
    • 安装 vue-cli: npm install vue -cli -g

    3.2 初始化

    $ vue init webpack first-test-vue // 初始化命令
    ? Project name first-test-vue // 项目名称
    ? Project description A Vue.js project // 项目描述
    ? Author NathanYang // 作者
    ? Vue build standalone  // 独立构建
    ? Install vue-router? Yes  // 安装路由
    ? Use ESLint to lint your code? Yes  // 安装 ESLint 代码检测工具
    ? Pick an ESLint preset Standard
    ? Setup unit tests with Karma + Mocha? Yes
    ? Setup e2e tests with Nightwatch? No // 端到端测试
    

    3.3 目录结构

    目录/文件说明
    build 项目构建(webpack)相关代码
    config 配置目录,包括端口号代理等
    node_modules npm 加载的项目依赖模块
    src 这里是我们要开发的目录,基本上要做的事情都在这个目录里。里面包含了几个目录及文件:assets: 放置一些图片,如logo等。components: 目录里面放了一个组件文件,可以不用。App.vue: 项目入口文件,我们也可以直接将组件写这里,而不使用 components 目录。main.js: 项目的核心文件。
    static 静态资源目录,如图片、字体等。
    test 初始测试目录,可删除
    .xxxx文件 这些是一些配置文件,包括语法配置,git配置等。
    index.html 首页入口文件,你可以添加一些 meta 信息或统计代码啥的。
    package.json 项目配置文件。
    README.md 项目的说明文档,markdown 格式

    3.4 安装包

    • esri-loader: 一个小型库,可帮助在非Dojo应用程序中加载ArcGIS API for JavaScript模块

      npm install --save esri-loader

    • Sass: Sass 是对 CSS 的扩展,让 CSS 语言更强大、优雅。 它允许你使用变量、嵌套规则、 mixins、导入等众多功能, 并且完全兼容 CSS 语法

      npm install --save-dev sass-loader

      npm install --save-dev node-sass

    3.5 项目配置

    • 自动打开浏览器:修改config/index.js autoOpenBrowser:falseautoOpenBrowser:true
    • 热启动: 修改呢config.json 在scripts/dev/webpack-dev-server 后添加--hot

    4 搭建第一个地图

    4.1 引入组件

    1、App.vue引入css文件,对应本地部署的路径.
    @import url('http://localhost:8080/arcgis_js_api/library/4.10/esri/themes/light/main.css');

    2、通过esriLoader的loadModules方法引入ArcGIS中模块

          const options = { 
            url: 'http://localhost:8080/arcgis_js_api/library/4.10/dojo/dojo.js'
          }
          esriLoader.loadModules([
              'esri/Map',
              'esri/views/MapView',
          ],options).then(([Map,MapView])=>{
              this.Map=Map;
              this.MapView=MapView;
          }).catch(error => console.log(error))
    

    3、初始化地图

          let _this = this; 
          // 初始化地图
          this.currentMap = new this.Map({
            basemap: 'streets'
          });
          this.currentView = new this.MapView({
            map: _this.currentMap,
            container: "map",
            center: [121.256151, 31.328742],
            zoom: 18
          });
          this.currentView.ui.remove("attribution");
    

    4、生成地图
    在这里插入图片描述

  • 相关阅读:
    Top 10 Product Manager Skills To Boost Your Resume In 2021
    大数据知识梳理
    B端产品如何设计权限系统?
    华三盒式交换机MAC、ARP、Route性能表项参数查询
    中了传说中的挖矿病毒
    SqlServer 2019 事务日志传送
    docker中生成的pdf中文是方框的解决方案
    The Live Editor is unable to run in the current system configuration
    2021 面试题大纲
    五分钟搞定Docker安装ElasticSearch
  • 原文地址:https://www.cnblogs.com/asdlijian/p/13514191.html
Copyright © 2011-2022 走看看