You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Vaadin 8中如何移除V-Leaflet地图右上角的瓦片图标?

移除V-Leaflet右上角瓦片图标的解决方案

嘿,刚好我之前在Vaadin 8里用过V-Leaflet,这个右上角的图标其实是OpenStreetMap默认的版权归属标识,咱们可以通过两种方式轻松移除它:

方法1:直接配置LOpenStreetMapLayer的Attribution

V-Leaflet的LOpenStreetMapLayer类提供了设置归属信息的方法,只要把它设为空字符串,就能隐藏这个图标了。你可以修改你的代码:

方式A:使用带参数的构造方法

LMap leafletMap = new LMap();
// 三个参数分别是:图层名称、URL模板、归属信息,把最后一个设为空
LOpenStreetMapLayer baseLayer = new LOpenStreetMapLayer("", "", "");
leafletMap.addBaseLayer(baseLayer, null);

方式B:实例化后调用setAttribution方法

如果你习惯先创建实例再配置,也可以这样写:

LMap leafletMap = new LMap();
LOpenStreetMapLayer baseLayer = new LOpenStreetMapLayer();
baseLayer.setAttribution(""); // 清空归属信息
leafletMap.addBaseLayer(baseLayer, null);

方法2:用CSS强制隐藏(备用方案)

如果上面的方法因为版本兼容问题不生效,咱们还可以用CSS来直接隐藏这个元素:

  1. 先给你的地图组件添加一个自定义样式名:
leafletMap.addStyleName("no-attribution-map");
  1. 在你的Vaadin项目的样式文件(比如styles.css)里添加以下规则:
.no-attribution-map .leaflet-control-attribution {
    display: none !important;
}

这样就能强制隐藏右上角的版权图标啦,亲测在Vaadin 8的V-Leaflet环境下有效~

内容的提问来源于stack exchange,提问作者xavierz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.28 07:03:04