vue 使用mapboxgl 添加本地sprite雪碧图并且展示

 

文件放到public下面,运行后前面端口加上public下的位置

在初始化的地方获取sprite.json文件

 let request = new XMLHttpRequest();
    request.open("get", window.location.origin + "/icons/sprite.json", true);
    request.onload = (oEvent) => {
      this.spriteJson = JSON.parse(request.response);
    };
    request.send();

<div class="icon-svg">
        <div
          class="icon-div"
          :style="{
            'background-image': `url(${spritePng})`,
            width: positions.width + 'px',
            height: positions.height + 'px',
            'background-position':
              '-' + positions.x + 'px -' + positions.y + 'px',
          }"
        ></div>
        <div class="icon-box">
          <div
            v-for="(item, key, index) in spriteJson"
            :key="index"
            @click="clickImg(item, key, index)"
            class="icon-item"
            :style="{
              'background-image': `url(${spritePng})`,
              width: item.width + 'px',
              height: item.height + 'px',
              'background-position': '-' + item.x + 'px -' + item.y + 'px',
            }"
          ></div>
        </div>
      </div>

Vue项目中使用MapboxGL,你可以按照以下步骤进行操作: 1. 首先,你需要在Vue项目中安装MapboxGL的依赖包。可以使用npm或者yarn命令来安装,例如: ``` npm install mapbox-gl ``` 或者 ``` yarn add mapbox-gl ``` 2. 在需要使用MapboxGL的组件中,你可以导入MapboxGL的库,并创建一个地图实例。例如: ```javascript import mapboxgl from 'mapbox-gl'; export default { mounted() { mapboxgl.accessToken = 'YOUR_ACCESS_TOKEN'; const map = new mapboxgl.Map({ container: 'map', style: 'mapbox://styles/mapbox/streets-v11', center: \[lng, lat\], zoom: 12 }); } } ``` 在上面的代码中,你需要将`YOUR_ACCESS_TOKEN`替换为你自己的Mapbox访问令牌。你还可以根据需要设置地图的样式、中心点和缩放级别。 3. 接下来,你可以根据需要在地图上添加各种图层、标记和控件等。你可以使用MapboxGL提供的API来实现这些功能。例如,你可以使用`map.addLayer()`方法来添加图层,使用`map.addMarker()`方法来添加标记等。 4. 最后,你可以在Vue组件的模板中添加一个容器元素,用于显示地图。例如: ```html <template> <div id="map"></div> </template> ``` 在上面的代码中,`id="map"`的div元素将用于显示地图。 这样,你就可以在Vue项目中使用MapboxGL了。请注意,上述代码只是一个简单的示例,你可以根据自己的需求进行修改和扩展。同时,你还可以参考MapboxGL的官方文档和示例代码来了解更多关于MapboxGL的用法和功能。 #### 引用[.reference_title] - *1* *2* *3* [Vue项目中使用Mapbox完成GIS可视化](https://blog.csdn.net/Tron_future/article/details/123806812)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

侧耳倾听...

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值