0

我有一个问题理解,我有一个带有矢量的点,上面有一个标签,它告诉它$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 对标签不起作用吗?

4

1 回答 1

1

我以前没见过 viewModel 的东西,但是:要隐藏标签,你可以将样式的标签设置为空字符串;并将其恢复为再次显示标签。

// hide label
haloLayer.styleMap.styles.default.defaultStyle.label = '';
haloLayerLayer.redraw();    

// show label
haloLayer.styleMap.styles.default.defaultStyle.label = "${" + ... + "}";
haloLayerLayer.redraw();    
于 2013-03-01T14:41:28.490 回答