2014-12-15 3 views
0

Как часть компиляции xtype, я хотел бы знать, будет ли слой, который я выбираю в моем простом хранилище данных (представленном this.getValue()), присутствует в слоях карты. Поэтому, если это так, A должно произойти, и B, если это не так. Проблема в том, что переменная myLayer кажется непризнанной, хотя Opera Dragonify вообще не вызывает ошибок. Где ошибка?Сравните getValue с map.layers [i] .name

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... 
     } 
    } 
    } 
} 

Спасибо за любые указатели,

ответ

0

@Guilherme Lopes Спасибо за это, но решением было это: mapPanel.map.layers.length вместо mapPanel.map.length.

1

Я думаю, что проблема в том, что вы используете this.getValue() вместо использования combo.getValue(). Я не знаю, как настроено ваше приложение, но обычно лучше использовать первый параметр вашего слушателя вместо ключевого слова this, чтобы избежать проблем с областью.

Надеется, что это помогает

Смежные вопросы