Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 23.10.2018, 08:55
Интересующийся
Отправить личное сообщение для Swat2k Посмотреть профиль Найти все сообщения от Swat2k
 
Регистрация: 15.08.2017
Сообщений: 17

Никто не запрещает его использовать главное понимать что у него есть свои ограничения (там не стоит делать bind, или как в данном случае store.load, и вообще, там стоит указывать вещи которые не должны быть одинаковыми на уровне цепочки прототипов).
А держать логику работы сложного компонента в view то ещё удовольствие, хотя бы потому что не позволяет повторно использовать код.

В данном случае можно вообще обойтись без initComponent'a, и без всяких this.

Ext.define('MyApp.Panel', {
    extend : 'Ext.Panel',
    defaultListenerScope: true,
    tellSomething : function () { console.log('Something'); },
    tbar : [
        { 
            text    : 'Click me',
            handler : 'tellSomething'
        }
    ]
});

Для уровня представления ExtJS предлагает использовать именно декларативный стиль.
Ответить с цитированием
  #12 (permalink)  
Старый 25.10.2018, 00:19
Аспирант
Отправить личное сообщение для Ambassador Посмотреть профиль Найти все сообщения от Ambassador
 
Регистрация: 12.11.2015
Сообщений: 68

Ребят, всем привет!
Почитав документацию про initComponent, я его убрал, лишь только по той причине что без него, мне, как начинающему, работать будет проще.

Сделал так:
items:[{
                xtype: 'combobox',
                fieldLabel: 'Status',
                name: 'status',
                store: 'ContrAgents',
                valueField: 'id',
                displayField: 'name',
                typeAhead: true,
                queryMode: 'remote',
                value: 3,//Установил Значение по умолчанию
                listeners: {
                        'render': function (combo) {
                               
                                var id_record = combo.getValue();
                                var index = combo.getStore().indexOfId(id_record)
                                console.log(index)
                                //filterCombo(combo, index);
                            }
                        }

            },


Но в index значение -1. Почему?
Как и советовали, сделал пример в Fiddle
Ответить с цитированием
  #13 (permalink)  
Старый 25.10.2018, 01:12
Интересующийся
Отправить личное сообщение для Swat2k Посмотреть профиль Найти все сообщения от Swat2k
 
Регистрация: 15.08.2017
Сообщений: 17

Потому что на этапе рендера, store может быть ещё не загружен.
Добавил отсебятины: Fiddle
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблемы получения значений при открытии окна редактирования записи Ambassador ExtJS 4 11.09.2018 10:19
Ошибка при установке babel DVV Элементы интерфейса 0 01.09.2018 14:07
Ошибка при клике Зосимов Общие вопросы Javascript 10 09.06.2015 14:19
При мульти загрузке дублирует записи в базу. Как можно исправить? makarow.dmitry jQuery 0 20.12.2014 20:16
Как при чтении или записи свойства объекта вызывать функцию danik.js Общие вопросы Javascript 3 16.09.2010 17:57