Sergey Novikov
Sergey Novikov

Reputation: 4196

ExtJS 4 Best way to select an element

In the code (I use MVC model if it matters), to get a specific elements, I use refs.

refs: [
    {
        ref: 'window',
        selector: 'windowName'
    },
    {
        ref: 'windowButton',
        selector: 'windowName button[name=buttonName]'
    },
    {
        ref: 'windowCombo',
        selector: 'windowName combo[name=comboName]'
    }
]

Is this the right choice to get an elements? Or I have to use getCmp() or something else?

Upvotes: 2

Views: 3776

Answers (1)

dbrin
dbrin

Reputation: 15673

Here are some tips on targeting a component in an app.

  1. First of all be very careful using IDs on the components. I have seen my fair share of problems with them. Avoid at all cost.

  2. Second, ExtJS provides several ways of targeting Components and Elements. Don't mix the two.

    For Components:
        • Ext.getCmp(id)
        • Ext.ComponentQuery.query() 
        • up() 
        • down() 
        • nextSibling() 
        • previousSibling()
        • child()
        • previousNode()
    plus various find.. Methods
    
    For Elements:
        • Ext.get()
        • Ext.dom.Query() 
    

    (more on DOM Query http://docs.sencha.com/core/manual/content/domquery.html

Upvotes: 4

Related Questions