高德地图的自定义官方样式列表:
使用: amap://styles/+ 样式的名称
如: 使用标准颜色
amap://styles/normal
依次类推
normal (标准)、dark(幻影黑)、light( 月光银)、whitesmoke(远山黛)、fresh(草色青)、grey(雅士灰)、graffiti(涂鸦)、macaron(马卡龙)、blue(靛青蓝)、darkblue(极夜蓝)、wine(酱籽)
使用vue-amap 添加高德地图自定义样式
安装 vue-amap
npm install -S vue-amap
vue中:
<template><div class="demo-box"><div><div class="demo"><el-amap vid="amapDemo" :events="mapEvents" /></div><div>马卡龙</div></div><div><div class="demo"><el-amap vid="amapGraffitiDemo" :events="graffitiMapEv" /></div><div>涂鸦</div></div><div><div class="demo"><el-amap vid="amapBlueDemo" :events="darkblueMapEv" /></div><div>极夜蓝</div></div><div><div class="demo"><el-amap vid="amapSelfDemo" :events="selfMapEv" class="self-map-demo"/></div><div>自定义</div></div></div></template><script>export default {name: "",data() {return {mapEvents: {init(o) {o.setMapStyle('amap://styles/macaron');}},graffitiMapEv:{init(o) {o.setMapStyle('amap://styles/graffiti');}},darkblueMapEv:{init(o) { o.setMapStyle('amap://styles/darkblue');}},selfMapEv:{init(o) {o.setMapStyle("amap://styles/57994c871bb604a4c79184f5f65d8782");}}}}}</script><style scoped>.demo-box{display: flex;flex-wrap: wrap;}.demo-box >div{margin-right: 20px;}.demo{width: 500px;height: 300px;padding: 10px;border: 1px solid #ddd;box-sizing: border-box;}.self-map-demo {background: teal;background-image: url("/it/u=3063029439,2036275027&fm=253&fmt=auto&app=120&f=JPEG?w=1280&h=800");background-position: center;}</style>
main.js
import AMap from 'vue-amap';Vue.use(AMap);// 初始化vue-amapAMap.initAMapApiLoader({// 高德的keykey: '改成自己的key'});
效果:
自定义高德地图的背景颜色,使用高德地图
示例代码:
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>Document</title><style>html,body{margin: 0;}.map-wrapper {width: 100%;height: 100vh;/*background: teal;*/background-image: url("/29431c1ae57e34250406e642983cc586fd1723e61f1ca3-ILytYd_fw658/format/webp"); }#container{width: 100%;height: 100%;}</style></head><body><script src="/maps?v=1.4.15&key=97e17a5e76b498925b1b181dc9691168"></script><div class="map-wrapper"><div id="container"></div></div><script>//初始化地图var map = new AMap.Map('container', {resizeEnable: true, //是否监控地图容器尺寸变化mapStyle: "amap://styles/57994c871bb604a4c79184f5f65d8782"});</script></body></html>
效果:
说明:
我在高德地图官网自定义了一个地图的地面为透明色,这时高德地图的背景色就是透明的了,然后在地图的父亲元素添加背景色就可以了。
高德自定义地图链接
有图片创建地图和创建地图样式两种方式,我选择的是创建地图样式,然后选择一种地图样式,点击创建,然后根据自己的需求,更改一些地图元素的颜色和透明度,最后保存发布,会生成样式id。
使用方法:amap://styles/样式ID
//初始化地图时加载样式var map = new AMap.Map('container', {resizeEnable: true, //是否监控地图容器尺寸变化mapStyle: "amap://styles/57994c871bb604a4c79184f5f65d8782"});
使用setMapStyle设置样式:
var map = new AMap.Map('container', {resizeEnable: true//是否监控地图容器尺寸变化});map.setMapStyle( "amap://styles/57994c871bb604a4c79184f5f65d8782");
添加高德原生的点图标和路线规划的插件:
在mapEvents中添加:
mapEvents: {init(o) {let marker = new AMap.Marker({ //点图标position: [121.59996, 31.197646]});marker.setMap(o);o.plugin(["AMap.Walking "], function() {var driving = new AMap.Walking({map: o,showTraffic: false,//去掉实时路况autoFitView: true, // 驾车路线规划策略,AMap.DrivingPolicy.LEAST_TIME是最快捷模式policy: AMap.DrivingPolicy.LEAST_TIME})o.addControl(driving);})}}
更多关于路线规划的属性参考官网API:
路线规划