Próbowałem użyć podejścia ref i selektora do ustawienia / pokazywania / ukrywania pola na jednej z zakładek w panelu 6 Tab. Rzuca błąd mówiąc "nieaktuszył TypeError: obiekt [Obiekt obiektu] nie ma metody" Uzyskaj metodę selektora ". "Czy selektor ref jest używany tylko w kontrolerze? Nie chcę używać Ext.getCMP () lub ext.comPonentquery.Query (). Nie są one zalecane do wykorzystania podejścia BT EXTJS facetów. Możemy użyć ref i selektora w kontrolera bez problemu, określając widok w widoku [] Część i ref i selektor w refs [] Część. Nr ref: 'x' selektor: 'xyz #x' 'this.getx () ... Postępowałem zgodnie z tą samą metodą odnoszącą się do pola wewnątrz widoku. To nie wyszło. Dlaczego tak? Jakie są inne możliwe sposoby ustawiania, ukrywania i pokazywania złożonych w innych zakładkach, a nie przez ext.getCMP () lub ext.componentquery.Query () ...

Myśli i sugestie są zawsze mile widziane! Dziękuję!

0
MBK 7 grudzień 2013, 02:14

2 odpowiedzi

Najlepsza odpowiedź

Wierzę, że refs jest dostępny tylko w ramach kontrolera. Zalecana praktyka jest używająca w dół Metoda. Działa tak jak zapytanie komponentowe, z wyjątkiem tego, że znajdzie tylko dzieci komponentu, z którego nazywa się. Więc coś takiego powinno działać.

YourTab.down('#fieldItemId').hide();
1
FoxMulder900 6 grudzień 2013, 22:38

Pojawia się w Dokumentach Sencha, które dodawanie ref jest dodawanie metody do sterownika. Więc nie byłoby dostępne poza kontrolera. Dodatkowo metoda jest właściwie wewnętrznie wykonującym Ext.ComponentQuery. Proszę zobaczyć Oto dla Informacje w Dokumentach Sencha dotyczące refs

1
weeksdev 6 grudzień 2013, 23:53