帖子
帖子
用户
博客
课程
显示全部楼层
17
帖子
1
勋章
186
Y币

[多端开发] AVM 组件引用高德地图问题

[复制链接]
发表于 2024-5-18 22:57:02
编写了打开地图代码,移动端页面出现下面的报错,但是控制台都没有报错,而且为什么一点击WIFI真机实时预览 移动端的WIFI调试就断开了,地图插件什么的都有添加
  1. <template>
  2. <safe-area class="page">
  3.     <view id="mapContainer" style="width: 100%; height: 100%;" @touchstart="stopPropagation"></view>
  4. </safe-area>
  5. </template>

  6. <script>
  7. export default {
  8.     name: 'map1',
  9.     data() {
  10.         return {
  11.             map: null // 用于存储地图实例
  12.         };
  13.     },
  14.     mounted() {
  15.         this.initMap();
  16.     },
  17.     methods: {
  18.         stopPropagation(event) {
  19.             // 防止事件传递到父组件
  20.             event.stopPropagation();
  21.         },
  22.         initMap() {
  23.             var aMap = api.require('aMap');
  24.             
  25.             // 调用隐私协议
  26.             aMap.updateMapViewPrivacy({
  27.                 privacyAgree: 'didAgree',
  28.                 privacyShow: 'didShow',
  29.                 containStatus: 'didContain'
  30.             });
  31.             aMap.updateSearchPrivacy({
  32.                 privacyAgree: 'didAgree',
  33.                 privacyShow: 'didShow',
  34.                 containStatus: 'didContain'
  35.             });

  36.             // 确保地图容器的宽高设置正确
  37.             var mapContainer = document.getElementById('mapContainer');
  38.             mapContainer.style.width = '100%';
  39.             mapContainer.style.height = '100%';

  40.             // 通过 open 方法打开地图
  41.             this.map = aMap.open({
  42.                 rect: {
  43.                     x: 0,
  44.                     y: 0,
  45.                     w: '100%',
  46.                     h: '100%'
  47.                 },
  48.                 showUserLocation: true,
  49.                 zoomLevel: 10,
  50.                 center: {
  51.                     lon: 116.40,
  52.                     lat: 39.90
  53.                 },
  54.                 fixedOn: 'mapContainer'
  55.             }, (ret, err) => {
  56.                 if (ret && ret.status) {
  57.                     console.log('地图加载成功');
  58.                 } else {
  59.                     console.error('地图加载失败', err);
  60.                 }
  61.             });
  62.         }
  63.     }
  64. }
  65. </script>

  66. <style>
  67.     .page {
  68.         height: 100%;
  69.         background: #fff;
  70.     }
  71.    
  72.     #mapContainer {
  73.         width: 100%;
  74.         height: 100%;
  75.     }
  76. </style>
复制代码

移动端页面

移动端页面

添加的插件

添加的插件

权限的添加

权限的添加
aMap.createMap是哪里的代码
17
帖子
1
勋章
186
Y币
勇可可【1161277121】 · 2024-5-19 01:04aMap.createMap是哪里的代码
  1. <template>
  2. <safe-area class="page">
  3.       <view id="mapContainer" style="width: 100%; height: 100%;"></view>
  4. </safe-area>
  5. </template>

  6. <script>
  7. export default {
  8.     name: 'map1',
  9.     data() {
  10.         return {
  11.             map: null // 用于存储地图实例
  12.         };
  13.     },
  14.     mounted() {
  15.         this.initMap();
  16.     },
  17.     methods: {
  18.         initMap() {
  19.             var aMap = api.require('aMap');
  20.             
  21.             // 调用隐私协议
  22.             aMap.updateMapViewPrivacy({
  23.                 privacyAgree: 'didAgree',
  24.                 privacyShow: 'didShow',
  25.                 containStatus: 'didContain'
  26.             });
  27.             aMap.updateSearchPrivacy({
  28.                 privacyAgree: 'didAgree',
  29.                 privacyShow: 'didShow',
  30.                 containStatus: 'didContain'
  31.             });

  32.             // 确保地图容器的宽高设置正确
  33.             var mapContainer = document.getElementById('mapContainer');
  34.             mapContainer.style.width = '100%';
  35.             mapContainer.style.height = '100%';

  36.             // 通过 open 方法打开地图
  37.             this.map = aMap.open({
  38.                 rect: {
  39.                     x: 0,
  40.                     y: 0,
  41.                     w: '100%',
  42.                     h: '100%'
  43.                 },
  44.                 showUserLocation: true,
  45.                 zoomLevel: 10,
  46.                 center: {
  47.                     lon: 116.40,
  48.                     lat: 39.90
  49.                 },
  50.                 fixedOn: 'mapContainer'
  51.             }, (ret, err) => {
  52.                 if (ret && ret.status) {
  53.                     console.log('地图加载成功');
  54.                 } else {
  55.                     console.error('地图加载失败', err);
  56.                 }
  57.             });
  58.         }
  59.     }
  60. }
  61. </script>

  62. <style>
  63.     .page {
  64.         height: 100%;
  65.         background: #fff;
  66.     }
  67.    
  68.     #mapContainer {
  69.         width: 100%;
  70.         height: 100%;
  71.     }
  72. </style>
复制代码

修改了一下代码,不报错,但是移动端上没有显示出地图
17
帖子
1
勋章
186
Y币
为什么显示地图加载成功,但是移动端上什么都不显示 6649b5479de2c.png
0
帖子
2
勋章
1449
Y币
参数rect中的w和h不要使用100%, 可以改成'auto' 或者 具体的窗口高度(例如 api.winWidth、api.winHeight、api.frameWidth、api.frameHeight)
17
帖子
1
勋章
186
Y币
至高吾·尚 · 2024-5-20 08:45参数rect中的w和h不要使用100%, 可以改成'auto' 或者 具体的窗口高度(例如 api.winWidth、api.winHeight、api.frameWidth、api.frameHeight)

好的谢谢

解决了就行
您需要登录后才可以回帖 登录

本版积分规则