在4.7版本中,不仅增加了WebGL的渲染支持(渲染前端速度加快,渲染量也加大)、增强了ES6中的Promises语法支持,还支持了npm管理及webpack打包,实属喜讯。

“意味着可以不经过esri-loader这个包来引入JsAPI了——ArcGIS极客说”

//当前未完待续

1. 前言

如果你想本地组织起ArcGIS API for JavaScript项目,那么从4.7开始,就可以用npm这个当下火热的前端js包管理工具进行项目中的API管理了。

以前Esri是推荐用bower这个包管理工具的,现在推荐使用npm了,当然现在仍然能用bower,不过还是推荐用npm。

事先,你可能需要安装:

  • node.js
  • git
  • grunt
  • java 7或更高版本

事实上,你只需要安装node.js即可。其他三个可以根据需要安装。

当然,仍然可以使用IIS或Tomcat本地部署的方式进行开发,看工程需要。

2. 如何安装

一行代码

npm install arcgis-js-api --save
或
npm install arcgis-js-api
或
npm i arcgis-js-api

如果下载完成,node_modules文件夹内应该会出现这样的文件夹列表:

测试得出:最好结合VPN下载,npm墙比较高,下载较慢(本人实测大概510+s),而且下载的体积较大(130+MB),下下来的都是未经压缩的源码。

3. 配置

以下为配置dojoConfig的有关代码。

// create or use existing global dojoConfig
var dojoConfig = this.dojoConfig || {};(function() {var config = dojoConfig;// set default propertiesif (!config.hasOwnProperty("async")) {config.async = true;}// add packages for libs that are not siblings to dojo(function() {var packages = config.packages || [];function addPkgIfNotPresent(newPackage) {for (var i = 0; i < packages.length; i++) {var pkg = packages[i];if (pkg.name === newPackage.name) {return;}}packages.push(newPackage);}addPkgIfNotPresent({name: "app",location: "./../../src/app"});addPkgIfNotPresent({name: "esri",location: "../arcgis-js-api"});addPkgIfNotPresent({name: "@dojo",location: "../@dojo"});addPkgIfNotPresent({name: "cldrjs",location: "../cldrjs",main: "dist/cldr"});addPkgIfNotPresent({name: "globalize",location: "../globalize",main: "dist/globalize"});addPkgIfNotPresent({name: "maquette",location: "../maquette",main: "dist/maquette.umd"});addPkgIfNotPresent({name: "maquette-css-transitions",location: "../maquette-css-transitions",main: "dist/maquette-css-transitions.umd"});addPkgIfNotPresent({name: "maquette-jsx",location: "../maquette-jsx",main: "dist/maquette-jsx.umd"});addPkgIfNotPresent({name: "tslib",location: "../tslib",main: "tslib"});config.packages = packages;})();// configure map.globalizevar map = config.map || {};if (!map.globalize) {map.globalize = {"cldr": "cldrjs/dist/cldr","cldr/event": "cldrjs/dist/cldr/event","cldr/supplemental": "cldrjs/dist/cldr/supplemental","cldr/unresolved": "cldrjs/dist/cldr/unresolved"};config.map = map;}
})();

配置dojoConfig

转载于:https://www.cnblogs.com/onsummer/p/8934189.html

ArcGIS API for JavaScript与 npm相关推荐

  1. ArcGIS API for JavaScript 开发笔记

    1.Vue.js 中引入 ArcGIS API for JavaScript 4.x 安装 esri-loader npm install --save esri-loader 引入 ArcGIS A ...

  2. ArcGIS API for JavaScript web前端应用

    ArcGIS API for JavaScript 文档查看地址: https://developers.arcgis.com/javascript/latest/ 现在分未3.x和4.x两种版本,对 ...

  3. arcgis api for JavaScript _跨域请求

    arcgis api for JavaScript  中出现跨域请求是常见问题, 通常出现类似如下错误消息类似: XMLHttpRequest cannot load http://10.32.2.7 ...

  4. 基于ArcGIS API for JavaScript加载天地图

    文章目录 前言 效果图 详细代码 总结 参考链接 前言 该篇主要介绍如何用ArcGIS JS API加载天地图,具体应用场景以及需求分析等,在上篇基于ArcGIS API for JavaScript ...

  5. 基于ArcGIS API for JavaScript加载百度各种类型切片地图

    文章目录 应用场景 需求分析 效果图 实现代码 原理解读 应用场景 部分项目基于ArcGIS平台,但是甲方只提供部分矢量数据,用作底图的地形图数据没有,表示可以使用百度地图作为底图.所以才会有使用Ar ...

  6. ArcGIS.Server.9.3和ArcGIS API for JavaScript实现Identify功能(六)

    目的: 1.ArcGIS.Server.9.3和ArcGIS API for JavaScript实现Identify功能,鼠标点击后获取被点击对象的然后以infoWindow的方式显示点击对象的属性 ...

  7. 初学ArcGIS API for JavaScript

    初学ArcGIS API for JavaScript 对于初学者来说,关于esri提供的一些样式和dojo自带的一些样式还是需要有一定的了解,这块在<WebGIS开发从基础到实践>讲解的 ...

  8. ArcGIS API for JavaScript Bookmarks(书签)

    说明:本篇博文介绍的是ArcGIS API for JavaScript中的 Bookmarks(书签) ,书签的作用是,把地图放大到一个地方 添加书签,书签名称可以和地图名称一直,单击标签 地图会定 ...

  9. ArcGIS API for JavaScript 4.0(一)

    原文:ArcGIS API for JavaScript 4.0(一) 最近ArcGIS推出了ArcGIS API for JavaScript 4.0,支持无插件3D显示,而且比较Unity和Sky ...

  10. arcgis api for javascript从地图如何读取要素

    arcgis api for javascript如何读取要素,通过ajax请求得到的. 比如: https://gis118.arcgisonline.cn/arcgis/sharing/rest/ ...

最新文章

  1. 自家表兄弟Tomcat和Jetty
  2. 2020.2idea怎么创建html模块_利用idea快速搭建一个项目
  3. 转载-如何应对在线故障
  4. rust实战入门到进阶(1)
  5. B系列台达服务器解密码步骤,台达HMI解密,DOP-A解密,DOP-B解密,文件密码解密
  6. 双向循环链表的插入与删除
  7. 高性能WEB开发(11) - flush让页面分块,逐步呈现
  8. nginx+uwsgi 部署
  9. Win-MASM64汇编语言-and/or指令
  10. JSK-27 三值排序【贪心】
  11. matlab读取excel里的数据并用imagesc画图
  12. MongoChef malformed UTF-8 character sequence at offset 89
  13. java技术可行性分析_java毕业设计管理系统需求分析
  14. 消防信号二总线有没电压_消防的电源总线和二总线的区别,二总线是不是信号线......
  15. 数据结构与算法分析(排序,递归,链表)
  16. 南京大学计算机技术考研,南京大学计算机技术考研
  17. 漫画 |《帝都程序猿十二时辰》
  18. Git创建分支和查看分支命令
  19. 曾国藩:一勤天下无难事(五勤)
  20. Geometry点线面的初始化

热门文章

  1. BGP路径属性分类与实验(华为设备)
  2. OSPFv3中LSA详解(二)——Router LSA详解
  3. NYOJ--975--关于521
  4. HDOJ--1728--逃离迷宫(广搜)
  5. numpy 中的nan和常用的统计方法
  6. Add NIC to Openfiler 2.3
  7. 指定 年-月-日 将其封装tree树状结构
  8. Android RxVolley = Volley + RxJava + OkHttp
  9. c++11支持类数据成员的初始化
  10. 通过代码设置radiobutton不同方位图标的两种方法