Esri的开源JS项目杂谈
一提到Esri大家首先想到的是庞大的ArcGIS产品大家族,其产品包含从桌面端,到服务器/云端,再到web/移动端。作为一名极客,不聊开源逼格似乎上不去啊。其实,Esri作为一个开放的平台,不仅有稳定强大的商业软件也有很多好玩实用的开源项目。今天我们就来聊聊Esri的那些JS的开源项目。
首先要给大家隆重介绍一下Esri在Github上的主页(这年头,没个Github主页都不好意说自己是程序员)
里面有众多Esri的开源项目,不仅有JavaScript的还有C++、C#、python、Java…那为啥今天只聊JS开源,那是…其实小编是做前端的啦,嘿嘿!
通过组织内搜索,我们找到了155个JavaScript的项目,当然这里面有很大一部分都是小的实验项目,今天小编就为大家介绍几个实用的开源项目。
esri-leaflet
leaflet是一个轻量级的展现交互式地图的开源的JavaScript库。其官网的访问地址为:http://leafletjs.com/
Esri在其基础上扩展了这个库的服务接入能力,使其可以接入ArcGIS服务器发布的切片服务、要素服务、动态地图服务以及影像服务。这个库对于Esri来说并不是要替代原有的ArcGIS API for JavaScript,而是为WebGIS的开发提供一个新的选择,利用leaflet可以快速上手构建一个基于地图展示的简单WebGIS应用,想开发一个功能强大的WebGIS?想展示三维模型?还是老老实实用ArcGIS API for JavaScript吧!
esri-leaflet库的文档及demo访问地址:http://esri.github.io/esri-leaflet/
开源库的Github下载地址为:https://github.com/Esri/esri-leaflet
- bootstrap-map-js
提到bootstrap前端开发人员应该都有所耳闻,因其漂亮的UI和方便的调用广泛的应用于Web端的程序的界面设计(https://getbootstrap.com/)。那你是否尝试将bootstrap与ArcGIS API for JavaScript配合使用?相信大多数人使用bootstrap是采用bootstrap+jquery的形式,殊不知bootstrap早已开发出了dojo扩展模块(http://xsokev.github.io/Dojo-Bootstrap/)
bootstrap-map-js项目在bootstrap库的基础上开发了一个轻量级的扩展插件用来构建地图应用(目前还只能用于3.x版本的ArcGIS API for JavaScript)通过bootstrap-map-js可以在地图上添加bootstrap风格的控件,并且可以实现多种屏幕尺寸应用的自适应效果。
因为ArcGIS API for JavaScript是基于dojo构建的,所以这个库的引用方式有两种,一种是dojo+jquery的方式另外一种是纯dojo的方式。
文档及在线demo可以访问:http://esri.github.io/bootstrap-map-js/demo/
开源项目下载地址为:https://github.com/Esri/bootstrap-map-js
给大家感受一下bootstrap风格的WebGIS应用,是不是跟平时的demo画风不太一样…
另外在ArcGIS API for JavaScrip 4.0中UI进一步的开放,不仅bootstrap,其他的第三方UI库也能方便的接入到应用中。
- angular-esri-map
要说今年什么前端库最火,jQuery?no,那已经成为过去时了,最火的前端库非AngularJS莫属,Angular.js 是一个MV*(Model-View-Whatever,不管是MVC或者MVVM,统归MDV(model Drive View))JavaScript框架,其是Google推出的SPA(single-page-application)应用框架,其为我们的web应用开发增加不少魔法变换。官网地址:https://www.angularjs.org/
angular-esri-map正是在此基础上对ArcGIS API for JavaScript进行封装使其可以在AngularJS中使用,Angular 1.x可以使用ArcGIS API 3.15以上版本,Angular 2.0可以使用ArcGIS API for JavaScript 4.0版本(也就是说可以支持3D展示)。
文档及demo的在线访问地址为:http://esri.github.io/angular-esri-map/#/home 。
开源项目地址为:https://github.com/Esri/angular-esri-map
- Story Maps
还记得上个星期那一组炫酷的地图故事模板么?地图与炫酷的插图和视频声音等多媒体配合真正的将地图成为讲述故事的一种方式。
地图故事集合的访问地址:http://storymaps.arcgis.com/en/,
更让人兴奋的是,地图故事都是基于JavaScript开发的,并且其源码都是在Github上开放的,这也就意味着,你可以对地图故事的讲述方式进行自定义的修改,点击每个地图故事,最后都会有一个Github的下载页面。
点击即可进入Github的下载页面,这里我就不一一贴地址了…
Esri的开源JS项目杂谈的更多相关文章
- 开源 iOS 项目分类索引大全 - 待整理
开源 iOS 项目分类索引大全 GitHub 上大概600个开源 iOS 项目的分类和介绍,对于你挑选和使用开源项目应该有帮助 系统基础库 Category/Util sstoolkit 一套Cate ...
- [Node.js] Node.js项目的持续集成
原文地址:http://www.moye.me/2016/03/03/nodejs_ci_by_jenkins 引子 持续集成 (Continuous Integration,简称CI)是一种软件工程 ...
- 常用开源GIS项目
常用开源GIS项目 常用开源桌面GIS软件 QGIS 始于2002年5月,算得上是开源GIS平台中的后起之秀.界面友好,分析功能可与GRASS GIS相媲美.主页:http://www.qgi ...
- 开源 iOS 项目分类索引大全
GitHub 上大概600个开源 iOS 项目的分类和介绍,对于你挑选和使用开源项目应该有帮助 系统基础库 Category/Util sstoolkit 一套Category类型的库,附带很多自定义 ...
- Node.js项目APM监控之New Relic
现在上一个项目,如果没有APM监控服务或应用的运行性能参数,等于是一架没有盲降系统的飞机正在盲降,结果会很悲催.出现了访问失效等问题时,都很难判定是性能瓶颈还是一个藏的深的bug,汇报的时候一顿眼晕, ...
- ASP.NET Core 开源论坛项目 NETCoreBBS
ASP.NET Core 轻量化开源论坛项目,ASP.NET Core Light forum NETCoreBBS 采用 ASP.NET Core + EF Core Sqlite + Bootst ...
- arcgis api for js之echarts开源js库实现地图统计图分析
前面写过一篇关于arcgis api for js实现地图统计图的,具体见:http://www.cnblogs.com/giserhome/p/6727593.html 那是基于dojo组件来实现图 ...
- arcgis api 3.x for js 之 echarts 开源 js 库实现地图统计图分析(附源码下载)
前言 关于本篇功能实现用到的 api 涉及类看不懂的,请参照 esri 官网的 arcgis api 3.x for js:esri 官网 api,里面详细的介绍 arcgis api 3.x 各个类 ...
- Vue.js + Nuxt.js 项目中使用 Vee-validate 表单校验
vee-validate 是为 Vue.js 量身打造的表单校验框架,允许您校验输入的内容并显示对应的错误提示信息.它内置了很多常见的校验规则,可以组合使用多种校验规则,大部分场景只需要配置就能实现开 ...
随机推荐
- 一行神奇的javascript代码
写本篇文章的缘由是之前群里@墨尘发了一段js代码,如下: (!(~+[])+{})[--[~+""][+[]]*[~+[]] + ~~!+[]]+({}+[])[[~!+[]]*~ ...
- java从基础知识(八)泛型
1.什么是泛型? 泛型是Java SE 1.5的新特性,泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数.这种参数类型可以用在类.接口和方法的创建中,分别称为泛型类.泛型接口.泛型方法 ...
- laravel数据库迁移(三)
laravel号称世界上最好的框架,数据库迁移算上一个,在这里先简单入个门: laravel很强大,它把表中的操作写成了migrations迁移文件,然后可以直接通过迁移文件来操作表.所以 , 数据迁 ...
- clearfix的应用
之前遇到一个问题,引用Bootstrap框架时 一行显示四个模块,小屏幕时显示两个模块 当内容一样时,大小屏幕时一样的,但是当其中一个和另一个内容不同时,展示效果就会有错乱 <div class ...
- js面向对象
什么事面向对象 用对象的思想去写代码,就是面向对象编程 面向对象编程(OOP)的特点 抽象:抓住核心问题 封装:只能通过对象来访问方法 继承:从已有对象上继承出新的对象 多态:多对象的不同形态 对象的 ...
- Euler Tour Tree与dynamic connectivity
Euler Tour Tree最大的优点就是可以方便的维护子树信息,这点LCT是做不到的.为什么要维护子树信息呢..?我们可以用来做fully dynamic connectivity(online) ...
- JSON 的标准:双引号而非单引号!
刚刚测试发现一段很简单的.看似正确的代码却是错误的: <?php $json_str = "{'name':'Eric', 'age':23}"; var_dump(json ...
- NET 自带IOC容器MEF指初体验
转自:http://www.cnblogs.com/ulex/p/4186881.html IOC容器:工具较多,大体功能都相同,大都需要事先对接口与实现进行配对(通过代码或配置文件),然后由系统自动 ...
- Windows Server 2012 R2桌面化详细设置图解
一.任务栏左下角启动服务器管理器,然后进行设置. 1.登录不显示服务器管理器 2.本地服务器,看到右边的IE增强的安全配置,如图所示,关闭两项内容.这样就关闭了IE增强安全提示框. 3.“工具”菜单, ...
- Angular2 表单
1. 说明 表单是Web程序中的重要组成部分,构建良好以及实用的表单必须解决如下几个问题: (1). 如何跟踪及更新表单的数据状态 (2). 如何进行表单验证 (3). 如何显示表单验证信息 Angu ...