일반적으로 ExtJS 구성 요소/객체는 구성 객체를 생성자에 전달하여 구성됩니다.JavaScript 객체 생성
this.serviceFiltersPanel = new Ext.FormPanel({
title: 'some title',
layout:'anchor',
buttonAlign: 'left',
buttons: [
{
xtype: 'button',
text: 'Click Me',
handler: function() {
// How do I get a reference to the FormPanel
// under construction here?
});
}
]
});
단추 처리기 내부에서 구성되는 FormPanel
개체에 대한 참조를 얻을 수있는 방법이 있습니까?
'formPanel'은 생성자가 실행을 완료 한 후에 만 할당된다고 가정합니다. FormPanel을 두 개의 변수에 할당하는 것이 왜 필요한지 설명 할 수 있습니까? 다른 말로하면, 왜 질문에'serviceFiltersPanel'에 그것을 할당 할 수없고, 그 핸들러 내에서 그 변수를 참조 할 수없는 이유는 무엇입니까? –
@Don은 전역 변수이기 때문에 거기에서만 사용할 수 있습니다. 그리고 당신은 정확 합니다만, 어쨌든 건설 후에는 핸들러가 호출되고 변수는 전역에 존재하므로이를 읽을 수 있습니다. – Esailija
@Don, 생성자는 버튼 핸들러가 실행되기 전에 실행 방법을 완료합니다. 당신은 (실행되지 않은) 버튼 핸들러를 생성자에 전달합니다. 왜 내가 별도의 변수에 저장하고 있는지에 관해서는, 이것은'this'라는 핸들러가 뭔가 다른 것을 참조 할 것이기 때문에'this.serviceFiltersPanel'을 사용하면 작동하지 않을 것이기 때문입니다. – Domenic