Map_zj_basic.vue 2.07 KB
<!--
 * @Author: jiangbotao
 * @Date: 2019-12-18 00:23:47
 * @LastEditors  : jiangbotao
 * @LastEditTime : 2019-12-18 09:27:40
 * @FilePath: \supermapvue\src\components\layers\Map_mapbox.vue
 -->
<template>
    <div >
        <div id="map"></div>
    </div>
</template>

<script>
import $ from 'jquery';
import mapboxgl from 'mapbox-gl';
import { Logo, MapService } from '@supermap/iclient-mapboxgl';
export default {
    name: 'Mapbox',

    data () {
        return {
        
        }
    },
    mounted(){
        // $.ajax({
        //     type: "GET",
        //     url: "/api/vtiles/styles/tdt/streets.json",
        //     type: 'get',
        //     dataType: 'json',  // 请求方式为jsonp
        //     crossDomain: true,
        //     success: function(data){
        //         console.log(data);
                var mapboxgl_style = 'zj/vtiles/styles/tdt/dark.json';
                var map = new mapboxgl.Map({
                    container: 'map',
                    zoom: 12,
                    center: [120.15, 30.25],
                    renderWorldCopies: false,
                    localIdeographFontFamily: "'黑体','san-serif'",
                    pitch: 50,
                    bearing: -10,
                    style: mapboxgl_style,
                    shading: 'realistic',
                    light: {
                        main: {
                            intensity: 0.5,
                            shadow: false
                        },
                        ambient: {
                            intensity: 0.2
                        },
                        ambientCubemap: {
                            exposure: 1,
                            diffuseIntensity: 0.5,
                            specularIntensity: 2
                        }
                    },
                    zlevel: 1
                });
                map.addControl(new mapboxgl.NavigationControl(), 'top-left');
            // }          
    //     });
    }
}
</script>

<style scoped>
#map {
  position: absolute;
  height: 100%;
  width: 100%;
  background-color: white
}
</style>