将getValue与map.layers[i].name进行比较



作为 xtype 组合的一部分,我想知道我在简单数据存储中选择的图层(由 this.getValue() 表示)是否存在于地图图层中。因此,如果确实如此,A应该发生,如果没有,则B。问题是myLayer变量似乎无法识别,即使Opera Dragonify根本没有抛出任何错误。错误在哪里?

listeners: {
  'select': function(combo, record) {
    for(var i = 0; i < mapPanel.map.length; i++) {
      var myLayer = mapPanel.map.layers[i].name;
      if (myLayer == this.getValue()) {
        // do A here...
      } else {
        // do B here...
      }
    }
  }
}

感谢您的任何指示,

我认为

问题是您使用的是this.getValue()而不是使用combo.getValue()。我不知道您的应用程序是如何设置的,但为了避免范围问题,通常最好使用侦听器的第一个参数而不是键工作this

希望这有帮助

@Guilherme 洛佩斯 谢谢你,但解决方案是这样的:mapPanel.map.layers.length而不是mapPanel.map.length

相关内容

  • 没有找到相关文章

最新更新