当前位置: 首页 > news >正文

漂亮的网站是什么建设出来的公司设计图片大全

漂亮的网站是什么建设出来的,公司设计图片大全,什么是网站解析,怎么免费弄网站场景: 移动端h5中,当我们需要在地图中展示很多marker点坐标的时候,通常会使用 bm-marker ,去循环生成marker点,在数量不多的情况下是没问题的,但是随着数据量的增加,地图就会变得卡顿,以及渲染延…

场景: 移动端h5中,当我们需要在地图中展示很多marker点坐标的时候,通常会使用 bm-marker ,去循环生成marker点,在数量不多的情况下是没问题的,但是随着数据量的增加,地图就会变得卡顿,以及渲染延迟,体验感极差
解决办法第一个想到的就是海量点 BmPointCollection,但是海量点明显的缺点就是不能自定义marker样式(icon)。但是业务是需要自定义图标 的,那没办法,就只能使用以下两种方式进行优化。

  1. 使用点聚合 BmlMarkerClusterer ,这个没啥好说的,缺点也很明显,不方便查看。
    <baidu-map @click="mapClick" class="bm-view" :zoom="12" :center="center"><bml-marker-clusterer :averageCenter="true" :styles="styles"><bm-marker @click="clickMarker(marker)" v-for="marker of pointList" :key="marker":position="{ lng: marker.lng, lat: marker.lat }" :icon="icon"></bm-marker></bml-marker-clusterer>
    </baidu-map>
    2.根据当前可视区域进行渲染(只渲染当前可视区域内的marker点)
    <!-- 1 正常渲染 添加ready事件  /> -->
    <baidu-map @click="mapClick" class="bm-view" :zoom="12" :center="center" @ready="readyMap"><bm-marker @click="clickMarker(marker)" v-for="marker of pointList" :key="marker":position="{ lng: marker.lng, lat: marker.lat }" :icon="icon"></bm-marker>
    </baidu-map>
    
    let bounds = ref(null) //可视区域
    let map = reactive(null) //地图实例
    let sourceList = [] //接口请求的marker点数据
    let pointList = [] //渲染的marker数据//地图ready事件
    function readyMap({ map:data }) {map = data//获取可视区域bounds.value = map.getBounds()// 地图添加缩放和拖拽事件 动态获取地图可视区域map.addEventListener('dragend', getBounds)map.addEventListener('zoomend', getBounds)
    }
    //获取地图的可视区域
    function getBounds() {if (!map) returnbounds.value = map.getBounds()
    }
    //动态计算区域内的坐标 sourceList.value
    watchEffect(() => {if (!bounds.value || !sourceList.value.length) return []//获取可视区域左下角let SouthWest = bounds.value.getSouthWest()//获取可视区域右上角                                                                                                                                                       				let NorthEast = bounds.value.getNorthEast();let markerList = [] // 筛选 获取区域内的点 sourceList.value.forEach(item => {if (item.lon >= SouthWest.lng &&item.lon <= NorthEast.lng &&item.lat >= SouthWest.lat &&item.lat <= NorthEast.lat) {markerList.push(item)}})//赋值显示pointList.value = markerList
    })
    //最后移除监听事件
    onUnmounted(() => {if (map) {map.removeEventListener("dragend", getBounds)map.removeEventListener("zoomend", getBounds)}
    })//marker icon 样式
    let icon= ref({url: 'https://xxxxxxxxxxxxxxxx.png',size: { width: 18, height: 18 },opts: {imageSize: { width: 18, height: 18 },},
    })

    如果还有其他更好的办法,欢迎补充!

http://www.yayakq.cn/news/197595/

相关文章:

  • 东莞网站建设网页推广做html网站搜索框教程
  • c 语言能开发做网站吗中信建设有限责任公司龙芳
  • 企业网站未来发展趋势游戏开发需要具备哪些技术
  • 官方网站建设教程企业网站前端模板
  • 国外网站dns在线解析全国企业信用信息查询系统官网
  • 福建省建设职业管理中心网站做百度推广送网站
  • 在哪些网站能接到活做绿茶直播
  • 网站优化潍坊校园网站建设经费申请报告
  • 设计一个手机网站平面多少钱深圳和胜建设公司
  • 网站建设实训总结及体会手机软件制作器下载
  • 在线心理健康网站建设wordpress禁用文章定时发布
  • 怎么开通网站平台济宁广告公司网站建设
  • 做网站开发需要培训吗手机wordpress打不开
  • 郑州高端网站开发固安做网站的
  • 可信的昆明网站建设网站的前端怎么做
  • seo排名整站优化南昌汉邦网站建设
  • 站长工具在线wordpress调用多媒体
  • 电商网站建设开题报告网站建设公司杭州
  • 建设英文网站小程序开发公司主页制作标准
  • 用PYTHON3 做网站wordpress代码标识
  • 阿里云做网站怎么样工商服务平台
  • dw做的上传网站打不开邢台专业做网站推广
  • 类阿里巴巴网站 建设费用鸿川建设工程有限公司官方网站
  • 微信后台怎么做微网站二级域名查询网站
  • 石家庄网络建站手游网页版
  • 无锡 网站建设公司织梦wordpress
  • 移动网站屏蔽wordpress 插件 推荐
  • 做美股的数据网站seo排名软件哪个好
  • 网站被黑怎么办wordpress首页修改路径
  • 多举措加强局门户网站建设wordpress 3.7.zip