我有一个问题的理解,我有一个带矢量的点和上面的标签告诉它$name
。
我现在需要的是一个复选框,在取消选中时隐藏标签。
toggleLabel: function(element) {
if(element.value == "showLabel"){
this.viewModel.label.setVisibility(false);
}
else {
}
},
然后在我的HTML中,我得到了以下复选框
<input type='checkbox' name='overlay' value='showLabel' id='showLabels' onclick='toggleLabel(this);' autocomplete='off' checked></input>
我错过了什么?
编辑:我不想删除整个图层,因为我仍然想要保留矢量(地图上的点),但只是隐藏标签集。 setvisibility在标签上不起作用吗?
答案 0 :(得分:1)
我之前没有见过viewModel的东西,但是:要隐藏标签,你可以将style的标签设置为空字符串;并将其恢复为再次显示标签。
// hide label
haloLayer.styleMap.styles.default.defaultStyle.label = '';
haloLayerLayer.redraw();
// show label
haloLayer.styleMap.styles.default.defaultStyle.label = "${" + ... + "}";
haloLayerLayer.redraw();