自定义icon门路,不能间接应用门路地址,须要require包裹
var myIcon = new window.BMap.Icon(require("@/assets/icon.png", new window.BMap.Size(26, 32));
- 那么问题来了,vite+typescript我的项目不容许应用动态资源加载办法require,如果应用require关键字就会报错,那必定没法显示坐标点。
- 所以咱们应用import来解决
let imgUrl = ref('')onMounted(async () => { let img = await import("/@/assets/41-placeholder.svg") imgUrl.value = img.default}
- 应用
var map = new window.BMap.Map("container"); // 创立地图实例map.centerAndZoom(point, 15);map.enableScrollWheelZoom(true); // 鼠标滚动缩放// 自定义坐标门路地址var myIcon = new window.BMap.Icon(imgUrl.value, new window.BMap.Size(26, 32));myIcon.setImageSize(new window.BMap.Size(26, 32))var marker = new window.BMap.Marker(new window.BMap.Point(116.399, 39.910), {icon: myIcon});map.addOverlay(marker);