diff --git a/pages/component/map/map.test.js b/pages/component/map/map.test.js
index d354cf81d6c2fcff5e2da50c5612ecaa21c3d0e2..adfc8bef143cd084e663a6283141b5c300639faa 100644
--- a/pages/component/map/map.test.js
+++ b/pages/component/map/map.test.js
@@ -17,7 +17,7 @@ describe('web-map', () => {
});
it('Check MapMethods', async () => {
- const mapMethods = ['addControls', 'addMarkers', 'addMarkersLabel','addPolyline', 'addPolygons', 'addCircles','includePoint']
+ const mapMethods = ['addControls', 'addMarkers', 'addMarkersLabel','removeMarker','addPolyline','removePolyline', 'addPolygons','removePolygon', 'addCircles','removeCircle','includePoint']
for (var i = 0; i < mapMethods.length; i++) {
await page.callMethod(mapMethods[i])
await page.waitFor(500);
diff --git a/pages/component/map/map.uvue b/pages/component/map/map.uvue
index b8bb27ab55597838265eb7dc4d445c9b5949a4e7..1740e74742218f8bda0208f015b99b39b17bc1f3 100644
--- a/pages/component/map/map.uvue
+++ b/pages/component/map/map.uvue
@@ -16,12 +16,17 @@
@confirm="confirm_scale_input">
+
-
+
-
-
-
+
+
+
+
+
+
+
方法示例
@@ -188,7 +193,82 @@
padding: 5,
display: 'ALWAYS'
}
- }
+ },
+ {
+ id: 2,
+ latitude: 39.894793,
+ longitude: 116.321592,
+ title: '北京西站',
+ zIndex: '1',
+ iconPath: '../../../static/location.png',
+ width: 40,
+ height: 40,
+ anchor: {
+ x: 0.5,
+ y: 1
+ },
+ callout: {
+ content: '北京西站',
+ color: '#ffffff',
+ fontSize: 12,
+ borderRadius: 10,
+ borderWidth: 2,
+ borderColor: '#333300',
+ bgColor: '#ff5500',
+ padding: 5,
+ display: 'ALWAYS'
+ }
+ },
+ {
+ id: 3,
+ latitude: 39.902344,
+ longitude: 116.484822,
+ title: '北京东站',
+ zIndex: '1',
+ iconPath: '../../../static/location.png',
+ width: 20,
+ height: 20,
+ anchor: {
+ x: 0.5,
+ y: 1
+ },
+ callout: {
+ content: '北京东站',
+ color: '#ffffff',
+ fontSize: 12,
+ borderRadius: 10,
+ borderWidth: 2,
+ borderColor: '#333300',
+ bgColor: '#ff5500',
+ padding: 5,
+ display: 'ALWAYS'
+ }
+ },
+ {
+ id: 4,
+ latitude: 39.865011,
+ longitude: 116.379007,
+ title: '北京南站',
+ zIndex: '1',
+ iconPath: '../../../static/location.png',
+ width: 40,
+ height: 40,
+ anchor: {
+ x: 0.5,
+ y: 1
+ },
+ callout: {
+ content: '北京南站',
+ color: '#ffffff',
+ fontSize: 12,
+ borderRadius: 10,
+ borderWidth: 2,
+ borderColor: '#333300',
+ bgColor: '#00aa00',
+ padding: 5,
+ display: 'ALWAYS'
+ }
+ },
];
@@ -390,9 +470,23 @@
const markers = reactive([] as Markers[]);
const addMarkers = () => {
+ scale.value = 11
markers.push(...testMarkers);
};
+ const removeMarker = () => {
+ const index = markers.findIndex(marker => marker.id === 4);
+ if (index !== -1) {
+ delete markers[index].label;
+ markers.splice(index, 1);
+ }else{
+ uni.showToast({
+ title: '未找到该标记点',
+ icon: 'none'
+ });
+ }
+ };
+
const addMarkersLabel = () => {
markers.forEach((marker, index) => {
marker.label = {
@@ -413,9 +507,14 @@
const polyline = ref([] as Polyline[]);
const addPolyline = () => {
- scale.value = 12;
+ scale.value = 11;
polyline.value = testPolyline;
};
+ const removePolyline = () => {
+ if (polyline.value.length > 1) {
+ polyline.value.splice(0, 1);
+ }
+ };
const polygons = ref([] as Polygons[]);
@@ -423,6 +522,11 @@
scale.value = 10;
polygons.value = testPolygons;
};
+ const removePolygon = () => {
+ if (polygons.value.length > 1) {
+ polygons.value.splice(0, 1);
+ }
+ };
const circles = ref([] as Circles[]);
@@ -430,6 +534,12 @@
scale.value = 10;
circles.value = testCircles;
};
+ const removeCircle = () => {
+ if (circles.value.length > 1) {
+ circles.value.splice(0, 1);
+ }
+ };
+
const showCompass = ref(true);
const enable3D = ref(true);
@@ -528,6 +638,22 @@
console.log(error)
}
});
+ map.value.translateMarker({
+ markerId: 2,
+ destination: {
+ latitude: 39.902344,
+ longitude: 116.484822,
+ },
+ autoRotate: true,
+ rotate: 0,
+ duration: 2000,
+ success: ret => {
+ console.log('handleTranslateMarker',JSON.stringify(ret));
+ },
+ fail: error => {
+ console.log(error)
+ }
+ });
}
};
@@ -623,9 +749,13 @@
addControls,
addMarkers,
addMarkersLabel,
+ removeMarker,
addPolyline,
+ removePolyline,
addPolygons,
+ removePolygon,
addCircles,
+ removeCircle,
includePoint,
handleGetCenterLocation,
handleGetRegion,