微信小程序开发-高德地图api
2017-11-22 17:07
405 查看
第一步:
既然是高德地图的使用,那么我们首先进入高德地图开放平台:高德地图
注册之后在应用管理新建一个应用获取key
获取key之后我们去高德地图API看看高德对API的介绍,
相关下载那有sdk的下载链接,参考文档有相关的方法介绍。
第二步:
登录微信开发者平台,在设置里面获取appid,另外在服务器域名设置里面将https://restapi.amap.com设置好。
确定都设置成功。
第三步:
打开微信开发者工具。
新建项目,输入appid。
项目文件目录:
- - libs
- - amap-wx,js
- - pages
- - index
- - index.js
- - index.json
- - index.wxml
- - index.wxss
- - utils
- - utils.js
- - app.js
- - app.json
- - app.wxss
- - project.config.json
直接撸上代码
wxml:
<view>
<view>城市:{{weather.liveData.province}}-{{weather.liveData.city}}</view>
</view>
<view class="map_container">
<map class="map" id="map" longitude="{{longitude}}" latitude="{{latitude}}" scale="14" show-location="true" markers="{{markers}}" bindmarkertap="makertap"></map>
</view>
<view class="map_text">
<text class="h1">{{textData.name}}</text>
<text>{{textData.desc}}</text>
</view>
js:
var amapFile = require('../../libs/amap-wx.js');
var markersData = [];
Page({
data:{
weather:"",
markers: [],
latitude: '',
longitude: '',
textDa
4000
ta: {}
},
onLoad: function () {
var that = this;
var myAmapFun = new amapFile.AMapWX({ key: '4af0431b3c68398b661cac70d4d700aa' });
myAmapFun.getWeather({
city:"武侯区",
success: function (data) {
//成功回调
console.log(data);
that.setData({
weather:data
})
},
fail: function (info) {
//失败回调
console.log("failed!!!!")
}
});
myAmapFun.getPoiAround({
location:'104.05,30.65', //经纬度
success: function (data) {
markersData = data.markers;
that.setData({
markers: markersData
});
that.setData({
latitude: markersData[0].latitude
});
that.setData({
longitude: markersData[0].longitude
});
that.showMarkerInfo(markersData, 0);
},
fail: function (info) {
wx.showModal({ title: info.errMsg })
}
})
},
showMarkerInfo: function(data, i) {
var that = this;
that.setData({
textData: {
name: data[i].name,
desc: data[i].address
}
});
},
changeMarkerColor: function (data, i) {
var that = this;
var markers = [];
markers.push(data[j]);
that.setData({
markers: markers
});
},
makertap: function (e) {
var id = e.markerId;
var that = this;
that.showMarkerInfo(markersData, id);
that.changeMarkerColor(markersData, id);
}
})
wxss:
.map_container{
position: absolute;
top: 0;
bottom: 80px;
left: 0;
right: 0;
}
.map{
width: 100%;
height: 100%;
}
.map_text{
position: absolute;
left: 0;
right: 0;
bottom: 0px;
height: 80px;
background: #fff;
padding: 0 15px;
}
text{
margin: 5px 0;
display: block;
font-size:12px;
}
.h1{
margin: 15px 0;
font-size:15px;
}
代码没有好好整理一下,最好自己写几个例子,看看高德开放平台的参考手册 -- 链接
既然是高德地图的使用,那么我们首先进入高德地图开放平台:高德地图
注册之后在应用管理新建一个应用获取key
获取key之后我们去高德地图API看看高德对API的介绍,
相关下载那有sdk的下载链接,参考文档有相关的方法介绍。
第二步:
登录微信开发者平台,在设置里面获取appid,另外在服务器域名设置里面将https://restapi.amap.com设置好。
确定都设置成功。
第三步:
打开微信开发者工具。
新建项目,输入appid。
项目文件目录:
- - libs
- - amap-wx,js
- - pages
- - index
- - index.js
- - index.json
- - index.wxml
- - index.wxss
- - utils
- - utils.js
- - app.js
- - app.json
- - app.wxss
- - project.config.json
直接撸上代码
wxml:
<view>
<view>城市:{{weather.liveData.province}}-{{weather.liveData.city}}</view>
</view>
<view class="map_container">
<map class="map" id="map" longitude="{{longitude}}" latitude="{{latitude}}" scale="14" show-location="true" markers="{{markers}}" bindmarkertap="makertap"></map>
</view>
<view class="map_text">
<text class="h1">{{textData.name}}</text>
<text>{{textData.desc}}</text>
</view>
js:
var amapFile = require('../../libs/amap-wx.js');
var markersData = [];
Page({
data:{
weather:"",
markers: [],
latitude: '',
longitude: '',
textDa
4000
ta: {}
},
onLoad: function () {
var that = this;
var myAmapFun = new amapFile.AMapWX({ key: '4af0431b3c68398b661cac70d4d700aa' });
myAmapFun.getWeather({
city:"武侯区",
success: function (data) {
//成功回调
console.log(data);
that.setData({
weather:data
})
},
fail: function (info) {
//失败回调
console.log("failed!!!!")
}
});
myAmapFun.getPoiAround({
location:'104.05,30.65', //经纬度
success: function (data) {
markersData = data.markers;
that.setData({
markers: markersData
});
that.setData({
latitude: markersData[0].latitude
});
that.setData({
longitude: markersData[0].longitude
});
that.showMarkerInfo(markersData, 0);
},
fail: function (info) {
wx.showModal({ title: info.errMsg })
}
})
},
showMarkerInfo: function(data, i) {
var that = this;
that.setData({
textData: {
name: data[i].name,
desc: data[i].address
}
});
},
changeMarkerColor: function (data, i) {
var that = this;
var markers = [];
markers.push(data[j]);
that.setData({
markers: markers
});
},
makertap: function (e) {
var id = e.markerId;
var that = this;
that.showMarkerInfo(markersData, id);
that.changeMarkerColor(markersData, id);
}
})
wxss:
.map_container{
position: absolute;
top: 0;
bottom: 80px;
left: 0;
right: 0;
}
.map{
width: 100%;
height: 100%;
}
.map_text{
position: absolute;
left: 0;
right: 0;
bottom: 0px;
height: 80px;
background: #fff;
padding: 0 15px;
}
text{
margin: 5px 0;
display: block;
font-size:12px;
}
.h1{
margin: 15px 0;
font-size:15px;
}
代码没有好好整理一下,最好自己写几个例子,看看高德开放平台的参考手册 -- 链接
相关文章推荐
- 微信小程序开发指南,含最新api
- 开发 | 微信小程序API-wx.setScreenBrightness_屏幕亮度调节
- 微信小程序开发—快速掌握组件及API的方法
- 微信程序开发系列教程(三)使用微信API给微信用户发文本消息
- 微信小程序-路线规划,地图导航功能基于高德地图API
- 微信小程序开发实践点滴——Bmob基本REST API的python封装
- 微信小程序开发(六) - API
- 微信小程序开发—(十七)animation API(2)
- 微信小程序开发 | 把玩系列:各种组件和API实用详解
- 微信小程序开发 | 把玩系列:各种组件和API实用详解
- 微信小程序开发实践点滴——Bmob常用API的使用
- 微信小程序入门与实战 常用组件 API 开发技巧 项目实战
- 微信小程序开发—快速掌握组件及API的方法
- wx.getImageInfo详解-图片-媒体API-微信小程序API-微信小程序开发教程
- 拿到微信小程序APPID了如何使用https版API中心来开发
- $微信小程序开发实践点滴——Bmob常用API的使用
- 微信小程序开发系列六:微信框架API的调用
- WordPress版微信小程序开发系列(一):WordPress REST API
- 微信小程序开发连接豆瓣的api时出线400错误的解决办法