更新记录
1.0.0(2026-08-06)
下载此版本
1.0.0
平台兼容性
uni-app(3.8.1)
| Vue2 |
Vue3 |
Chrome |
Safari |
app-vue |
app-nvue |
Android |
iOS |
鸿蒙 |
| √ |
√ |
√ |
√ |
√ |
× |
√ |
√ |
× |
| 微信小程序 |
支付宝小程序 |
抖音小程序 |
百度小程序 |
快手小程序 |
京东小程序 |
鸿蒙元服务 |
QQ小程序 |
飞书小程序 |
小红书小程序 |
快应用-华为 |
快应用-联盟 |
| √ |
× |
× |
× |
× |
× |
× |
× |
× |
× |
× |
× |
pass-b-map
地图组件以及 chooseLocation、getLocation、openLocation,传参与 uni 官方保持一致,多传一个 key。
使用方式
1. 地图组件
<template>
<passBMap
:markers="markers"
:scale="scale"
:longitude="longitude"
:latitude="latitude"
:polyline="polyline"
:showLocation="true"
mapKey="你的百度地图key"
class="map"
@markertap="markertapHandler"
@regionchange="regionchangeHandler">
</passBMap>
</template>
<script setup>
import passBMap from '@/uni_modules/pass-b-map/components/pass-b-map/pass-b-map.vue';
const scale = ref(16);
const longitude = ref(116.404);
const latitude = ref(39.915);
const markers = ref([
{
id: 1,
latitude: 39.915,
longitude: 116.404,
title: '标记点',
iconPath: '/static/logo.png',
width: 30,
height: 30
}
]);
const polyline = ref([]);
function markertapHandler(e) {
console.log('marker 点击', e);
}
function regionchangeHandler(e) {
console.log('视野变化', e);
}
</script>
<style scoped>
.map {
width: 100%;
height: 100vh;
}
</style>
2. 引入 JS API
import {
getLocation,
chooseLocation,
openLocation
} from "@/uni_modules/pass-b-map";
3. getLocation 获取定位
getLocation({
key: "你的百度地图key",
type: "gcj02",
complete(e) {
console.log("getLocation:", e);
}
});
4. chooseLocation 选择位置
chooseLocation({
key: "你的百度地图key",
latitude: 39.915,
longitude: 116.404,
keyword: "",
complete(e) {
console.log("chooseLocation:", e);
}
});
5. openLocation 打开地图查看位置
openLocation({
latitude: 23.121664,
longitude: 113.758869,
name: "测试name",
address: "测试address",
scale: 16,
key: "你的百度地图key",
complete(e) {
console.log("openLocation:", e);
}
});
组件 props
| 属性 |
类型 |
必填 |
说明 |
| mapKey |
String |
是 |
百度地图开发者 Key |
| longitude |
Number / String |
否 |
中心点经度 |
| latitude |
Number / String |
否 |
中心点纬度 |
| scale |
Number |
否 |
缩放级别,默认 16 |
| markers |
Array |
否 |
地图标记点,格式同 uni-app map 组件 |
| polyline |
Array |
否 |
地图路线,格式同 uni-app map 组件 |
| showLocation |
Boolean |
否 |
是否显示定位点,默认 false |
组件事件
| 事件名 |
说明 |
| markertap |
点击 marker 时触发 |
| regionchange |
地图视野变化时触发 |
注意事项
- 本插件坐标输出统一为 GCJ02(火星坐标系),与 uni-app 官方
getLocation({ type: 'gcj02' }) 保持一致。
- H5 端需在
https / localhost / 127.0.0.1 等安全源下才能正常调用浏览器定位;非安全源会自动降级为默认坐标。
chooseLocation 内置的 POI 搜索依赖代理服务,若网络不通会返回空列表。