follow me on Twitter

    ExtJS: myContainer.items.items.items.items... :-D

    E chi l'avrebbe mai detto?!?!?!

    ExtJS è un gran bel toolkit... un vero è proprio UI toolkit (come Gtk, Qt, Swing etc. etc.) per Javascript multibrowser.

    Sono ormai un bel po' di mesi che lo usiamo passando dalla versione 1.1.1 alla nuova 2.0.

    Siamo molto soddisfatti della pulizia e flessibilità del framework e la composizione lazy in JSON dell'interfaccia è un vera manna... non mancano ovviamente le sorprese... ma in fondo è questo il bello dell'usare nuove tecnologie fresche fresche... la continua scoperta :-)

    Una delle cose a cui non riuscivamo assolutamente a rassegnarci era quello di non riuscire a scorrere gli item di un Ext.Container mediante l'attributo items:
    
    >> console.log(myContainer.items)
    [ undefined, undefined, undefined ]
    
    
    tradotto da Javascript in italiano: "la lunghezza dell'array è giusta... mah dove c....o stanno i nostri oggetti Ext.Component?!?!?!?"

    ancora più strano visto che con il metodo find si ottiene un array di Ext.Component:
    
    >> console.log(myContainer.find())
    [Object initialConfig=Object id=contact-info xtype=panel, 
     Object initialConfig=Object id=operator-notes xtype=form, 
     Object initialConfig=Object xtype=textarea]
    
    non è sopportabile la sensazione di essere preso per il c..o da un pezzo di codice Javascript!!!!

    beh... grazie ad un po' di debugging e con l'aiuto dei watch di Firebug il mistero è svelato: items.items... i maledetti!!!!!!

    e c'è anche un motivo, anche se puo' sembrare assurdo: items è una istanza di Ext.util.MixedCollection che ha a sua volta un attributo items contenente l'array di istanze di Ext.Component :-(

    Questa si chiama proprio cieca deformazione professionale :-P

    items.items non si può proprio sentire... beh almeno ora sappiamo perchè ;-)

    0 commenti:

    View Luca Greco"s profile on LinkedIn

    Rpl

    La mia foto
    Lecce, Italy
    Fulltime Coder and *nix BOFH