Ext.util.Observable.capture

2009.11.22. 14:24 stack

Hibakeresés közben hasznos, ha az ember nyomon tudja követi, hogy egy-egy komponens milyen eseményeket vált ki, milyen paraméterekkel. Erre egy egyszerű megoldás az Ext.util.Observable.capture használata:

var win = new Ext.Window({
    title: 'Szerbusz világ!',
    width: 200,
    height: 50
});

Ext.util.Observable.capture(win, function () {
    console.log(arguments);
});

win.show();

Annyi megjegyzés még, hogy az itt megadott függvény a többi callback függvény előtt hívódik meg.

6 komment

Címkék: event capture

A bejegyzés trackback címe:

https://extjs.blog.hu/api/trackback/id/tr231543768

Kommentek:

A hozzászólások a vonatkozó jogszabályok  értelmében felhasználói tartalomnak minősülnek, értük a szolgáltatás technikai  üzemeltetője semmilyen felelősséget nem vállal, azokat nem ellenőrzi. Kifogás esetén forduljon a blog szerkesztőjéhez. Részletek a  Felhasználási feltételekben és az adatvédelmi tájékoztatóban.

Lzolcsi 2009.11.22. 16:07:54

hasznos otlet, koszi

carstep 2009.11.25. 11:13:01

jo tipp, de az arguments elso eleme fogja megadni nekunk, hogy melyik esemeny aktivalodott?

stack 2009.11.25. 18:35:40

Egy függvényen belül az arguments visszaadja, hogy milyen paraméterekkel lett meghívva a függvény. Mivel jelen esetben különböző számú paramétereket kaphat a függvény, ezért lett ez átadva a console.log-nak.

Ha úgy jobban tetszik, akkor hasonló, mint a PHP-ben a func_get_args(), de ez persze csak hasonlóság, az arguments nem array, hanem object, és van további eleme. Rekurzív függvényeknél előszeretettel használják a arguments.callee meghívását.

carstep 2009.11.26. 17:59:30

@stack: tudom, ezeket, csak tovabb akartam adni az infot, ha valakit erdekel :-)

A leiras [http://www.extjs.com/deploy/dev/docs/?class=Ext.util.Observable] szerint az elso parameter az esemeny neve lesz.

stack 2009.11.26. 23:36:10

Ja. :) a mondat elején lévő de, illetve a végén lévő kérdőjel megzavart... :)

Ám, hogy tovább ragozzam... a capture a fireEvent-eket kapja el, ahol ugye az első paraméter az esemény neve...

a fenti példát folytatva egy új esemény bevezetésével. (először az esemény lekezelése, utána az esemény kiváltása)

win.on('hehe', function (cmp, number) {
console.log(number);
});
win.fireEvent('hehe', win, 42);

Tehát innen jön, hogy az első paraméter az esemény neve...

No mindegy... ezzel már tényleg túl lett ragozva a kérdés. :)

carstep 2009.11.27. 17:13:36

@stack: bocsanat, igen visszaolvasva, egy felkialtojel tenyleg hianyzik a vegerol :-)

ExtJS blog, mi ez?

Az ExtJS egy JavaScript keretrendszer, melyet a blog írója elfogultan a legjobbnak tart, és ez a blog olyan apróságok gyűjteménye, melyek ExtJS használata közben felmerültek, eszébe jutottak...

Címkék

ajax (4) alignto (1) állás (3) analytics (1) anchorto (1) android (4) animate (2) array (9) auto (1) back button (1) beautifier (1) beforeevent (1) benchmark (1) blur (1) budapest.js (1) button (1) canvas (1) capture (1) case sensitive (1) center (1) change (1) cikkajánló (1) class (2) closure compiler (1) collapse (1) combobox (3) comment (1) console.log (2) contextmenu (2) core (2) count (1) css (15) csv (1) dataview (1) date (4) datefield (3) datepicker (1) debug (1) doksi (1) dragdrop (1) easing (1) eclipse (1) editor (1) element (5) error (5) eval (2) event (1) fejtörő (1) field (2) fieldset (1) filter (1) firefox (4) firefox extension (2) focus (3) fonts (1) fun (1) function (1) google (2) google chrome (1) grayscale (1) grid (4) group contact (1) header (3) height (2) hidden (1) hirek (2) history (1) htaccess (1) html5 (2) htmleditor (2) https (1) icon (3) id (2) ie (2) ie6 (1) ie9 (1) iframe (3) image (2) indexof (1) javascript (1) jquery (2) jslint (2) jsmin (1) json (7) keymap (1) kipróbálom (2) könyvajánló (2) label (1) layout (1) lint (1) log (1) loop (1) magyar (2) mandelbrot (1) mask (1) math (1) maxlength (1) mistake (1) mysql (5) napi szívás (16) nem extjs (12) node (1) nth child (1) number (1) off (5) offline (1) operator (1) override (20) pagesize (1) paging (2) panel (2) php (7) picker (1) plugin (3) pozicionálás (2) preload (1) print (1) propertygrid (1) pseudo (3) readonly (2) record (1) regexp (1) replace (1) resizable (1) rotate (1) round (1) scale (1) sencha touch (2) server (1) shuffle (1) slider (1) sort (3) sortable (1) store (2) string (7) sum (1) tabchange (1) tabpanel (1) tab key (2) tdd (1) template (1) textarea (2) textfield (1) textitem (1) theme (2) throw (1) timer (1) timestamp (1) title (2) toggle (1) toolbar (6) tools (1) total count (1) transparent (1) tree (1) treenode (1) trigger (1) truncate (1) try (1) ucfirst (1) undefined (2) unique (1) unload (1) urlencode (1) utf8 (2) verzió (1) video (1) viewer (1) viewport (2) visible (2) vtype (1) window (2) xtype (1) zindex (2)

Extjs.blog.hu - RSS

Kérdés?