文章目录

  • 前言
  • 一、mapbox是什么?
    • 官网
    • 官网示例效果尝鲜
  • 二、使用步骤
    • 1.引入mapbox-gl.js库
      • 在线库
      • npm 形式安装
    • 2.使用方法
      • 无账号则申请,有账号则登录
      • 申请完成后,获取token
      • 创建一个地图元素容器
      • 使用token并配置
      • 创建一个地图示例
  • 效果
  • 总结

前言

最近开始入坑前端mapbox地图,跟大家一起慢慢深入学习mapbox


一、mapbox是什么?

官网

https://docs.mapbox.com/mapbox-gl-js/guides/

Mapbox GL JS 是一个客户端JavaScript库,用于使用Mapbox的现代地图技术构建web地图和web应用程序。您可以使用Mapbox GL JS在web浏览器或客户端中显示Mapbox地图,添加用户交互性,并在应用程序中定制地图体验。

官网示例效果尝鲜

二、使用步骤

1.引入mapbox-gl.js库

在线库

<script src='https://api.mapbox.com/mapbox-gl-js/v2.11.0/mapbox-gl.js'></script>
<link href='https://api.mapbox.com/mapbox-gl-js/v2.11.0/mapbox-gl.css' rel='stylesheet' />

npm 形式安装

npm install --save mapbox-gl

然后引入

import 'mapbox-gl/dist/mapbox-gl.css';
import mapboxgl from 'mapbox-gl';

2.使用方法

无账号则申请,有账号则登录

申请地址:https://account.mapbox.com/auth/signup/

申请完成后,获取token

创建一个地图元素容器

<div id='map' style='width: 100%; height: 100%;'></div>

使用token并配置

mapboxgl.accessToken = '<输入你的token>';

创建一个地图示例

const map = new mapboxgl.Map({container: 'map', // 地图容器 IDstyle: 'mapbox://styles/mapbox/streets-v12', // 样式urlcenter: [116.42396,39.91784], // 中心位置[lng, lat]zoom: 16, // 缩放pitch: 35, // 倾斜角度
});

Map配置项

属性 描述
container Mapbox GL JS将在其中呈现地图的HTML元素,或者元素的字符串id。指定的元素不能有子元素。
style 地图的Mapbox样式。这必须是一个符合Mapbox样式规范中描述的模式的JSON对象,或者该JSON的URL。可以接受空值以允许手动添加样式。要从Mapbox API加载一个样式,你可以使用Mapbox://styles/:owner/:style的URL形式,其中:owner是你的Mapbox帐户名,:style是样式ID。你也可以使用mapbox自有的样式:官网文档
center 地图的初始地理中心点
zoom 地图的初始缩放级别
pitch 地图的初始倾角(倾斜) 范围(0-85)

完整代码(实例)

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><script src='https://api.mapbox.com/mapbox-gl-js/v2.11.0/mapbox-gl.js'></script><link href='https://api.mapbox.com/mapbox-gl-js/v2.11.0/mapbox-gl.css' rel='stylesheet' /><style>body,html {width: 100%;height: 100%;margin: 0;padding: 0;}</style>
</head><body><div id='map' style='width: 100%; height: 100%;'></div>
</body>
<script>mapboxgl.accessToken = '<输入你的token>';const map = new mapboxgl.Map({container: 'map', // 地图容器 IDstyle: 'mapbox://styles/mapbox/streets-v12', // 样式urlcenter: [116.42396,39.91784], // 中心位置[lng, lat]zoom: 16, // 缩放pitch: 35, // 倾斜角度});
</script></html>

效果

总结

以上就是今天要讲的内容,本文仅仅简单介绍了mapbox-gl.js的使用,而mapbox-gl.js提供了非常多的地图功能,后续文章,我将带大家慢慢深入了解。

如果觉得有用欢迎点赞关注
有问题私信我!!~~

mapbox一学就会系列:01 第一个地图页面相关推荐

  1. Android Studio 单刷《第一行代码》系列 01 —— 第一战 HelloWorld

    前言(Prologue) 本系列将使用 Android Studio 将<第一行代码>(书中讲解案例使用Eclipse)刷一遍,旨在为想入坑 Android 开发,并选择 Android ...

  2. 跟我学spring security系列文章第一章 实现一个基本的登入

    文章目录 指定依赖 安全配置 添加controller测试代码 测试 源码地址: https://github.com/pony-maggie/spring-security-learn 指定依赖 s ...

  3. python ai 教学_【Python AI教学】从零开始学Python AI开发系列01

    原标题:[Python AI教学]从零开始学Python AI开发系列01 欢迎开启新的旅程. 从2016年开始,AI人工智能的热潮扑面而来.而在机器学习和深度学习领域,Python位于最受欢迎的编程 ...

  4. 零起点学算法01——第一个程序Hello World!

    零起点学算法01--第一个程序Hello World! Description 题目很简单 输出"Hello World!"(不含引号),并换行. Input 没有输入 Outpu ...

  5. 四小时学python爬虫爬取信息系列(第一天)

    四小时学python爬虫爬取信息系列(第一天)(全是干货) 1.安装requests库(可以在电脑python,我是进入anaconda我建的虚拟环境) anaconda虚拟环境法流程: conda ...

  6. PHP扩展开发系列01 - 我要成为一名老司机

    PHP扩展开发系列01 - 我要成为一名老司机 1. 关于扩展的教程貌似挺全了,为啥还写? 记录下我写扩展的历程 自认为会写的更容易理解 我的宗旨就是 "先用再识" 代码写着写着就 ...

  7. Flutter 即学即用系列博客——09 MethodChannel 实现原生与 Flutter 通信(二)

    前言 上一篇我们讲解了如何通过 EventChannel 实现 Android -> Flutter 的通信. 并且也看到了 Flutter 内部 EventChannel 源码也是对 Meth ...

  8. 学废了系列 - WebGIS vs WebGL图形编程

    前工作中有不少涉及到地图的项目,我参加了几次技术评审,前端伙伴们在 WebGIS 方面的知识储备稍有不足,这次分享的主要目的是科普一些在前端领域比较常用的 WebGIS 知识.另外,我之前的工作中积攒 ...

  9. 《融智学进阶文集》01:间接计算模型和间接形式化方法

    <融智学进阶文集>01: 间接计算模型和间接形式化方法 01-间接计算模型和间接形式化方法_邹晓辉.pdf 怎么采用融智学七遍通方法熟悉原创文本? 对照阅读 摘要: 本文旨在:从人机交互界 ...

最新文章

  1. VTK:vtkPlotArea用法实战
  2. POJ 2106 Boolean Expressions (布尔表达式求值)
  3. 前端样板资源概览及总评
  4. js设置奇偶行数样式
  5. SQL Server代理(11/12):维护计划作业
  6. 【渝粤教育】广东开放大学 网络市场调查与预测 形成性考核 (23)
  7. 当快递员也学会了“跑路”,消费者如何捍卫自己的权益?
  8. 巴西发生矿坝决堤事故 外媒:90名受困者已救出
  9. OFDM中的帧(frame)、符号(symbol)、子载波(subcarriers)、导频(Pilot)、保护间隔(guard)的关系图解以及代码详解--MATLAB
  10. Job for network.service failed because the control process exited with error code. See “systemctl st
  11. 基于人工智能的搜索引擎优化软件-市场现状及未来发展趋势
  12. Hibernate5相关特性参考
  13. 南艺计算机作曲专业怎样,南京艺术学院作曲与作曲技术理论专业/学费/录取分数线/怎么样...
  14. 解决谷歌浏览器打开是2345主页的问题
  15. 决策树---红酒分类
  16. C语言小游戏: 2048.c
  17. Recent Trends in Deep Learning Based Natural Language Processing(arXiv)笔记
  18. 为什么信而富显示服务器开小差,剖析:信而富12点后也没额度的真相!
  19. Vegas13安装教程图文附下载地址
  20. matlab khatri rao积,关于矩阵Khatri-Rao积的一些迹不等式

热门文章

  1. USB Type A/B/C的区别和基本知识
  2. 用topcoder准备cs 面试
  3. [RK3568 Android11] 教程之使用RKDevInfoWriteTool工具烧录SN和MAC地址等
  4. 在Word中隐藏文字
  5. js replace() 使用
  6. 仅一张人脸就能被扒得底裤不剩:口罩墨镜都没用,跨平台跨时空,这个人脸搜索惹了众怒...
  7. I2C之知(一)--I2C的简介和特性
  8. Windows——关于service
  9. 数据库作业:SQL练习3 - SELECT(单表查询)
  10. Win11怎么打开3D查看器