Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 26.01.2015, 16:57
Новичок на форуме
Отправить личное сообщение для marduk Посмотреть профиль Найти все сообщения от marduk
 
Регистрация: 01.02.2011
Сообщений: 4

Проблемы с getProvider
Добрый день.
Делаю небольшую crm на базе desktop из примера
http://dev.sencha.com/ext/5.1.0/exam...top/index.html

Столкнулся с проблемой, когда используешь
Ext.state.Manager.setProvider(new Ext.state.LocalStorageProvider()) обязательно нужна перезагрузка страницы, для того чтобы к новому окну применились настройки.
Тоесть я открываю окно с таблицей, закрываю окно, открываю его по новой, а настройки не применяются, подскажите как их подгрузить без перезагрузки страницы.

Заранее благодарен за помощь )
Ответить с цитированием
  #2 (permalink)  
Старый 27.01.2015, 13:36
Новичок на форуме
Отправить личное сообщение для marduk Посмотреть профиль Найти все сообщения от marduk
 
Регистрация: 01.02.2011
Сообщений: 4

Ребят, ну очень нужна помощь, неужели никто не знает.
Мне по сути в app/gridWindow.js нужно в init принудительно заставить читать provider, но вот как я не нашел (
Ответить с цитированием
  #3 (permalink)  
Старый 27.01.2015, 18:37
Профессор
Отправить личное сообщение для novikov Посмотреть профиль Найти все сообщения от novikov
 
Регистрация: 19.11.2012
Сообщений: 178

может быть, использовать флаг stateful?

http://docs.sencha.com/extjs/5.1/5.1...w-cfg-stateful

код какой-нибудь покажите.

может быть, нужно заново отрендерить окно, после изменения настроек. Изменили, скажем, настройки и бросили событие.

попробуйте повесить обработчик на statechange провайдера.

Ext.state.Manager.setProvider(new Ext.state.LocalStorageProvider({
    listeners: {
         statechange: function(provider, key, value) {
             // запуск события
         }
    }
}))


приходится гадать...

возможно, кому-то Ваша ситуация покажется более ясной

Последний раз редактировалось novikov, 27.01.2015 в 18:49.
Ответить с цитированием
  #4 (permalink)  
Старый 28.01.2015, 11:14
Новичок на форуме
Отправить личное сообщение для marduk Посмотреть профиль Найти все сообщения от marduk
 
Регистрация: 01.02.2011
Сообщений: 4

Код app.js, где происходит инициализация модулей и setProvider
Ext.define('Desktop.App', {
    extend: 'Ext.ux.desktop.App',

    requires: req,
    init: function() {
        // custom logic before getXYZ methods get called...
        Ext.state.Manager.setProvider(new Ext.state.LocalStorageProvider());

        this.callParent();
    },

    getModules : function(){
return [
                new Desktop.GridWindow(),
                new Desktop.GridUsers(),

В модуле по сути ничего особенного, окошко с гридом
createWindow : function(){
        var store = Desktop.GridUsers.getUserData();
        var desktop = this.app.getDesktop();
        var users = desktop.getWindow('grid-users');
        if(!users){
            users = desktop.createWindow({
                id: 'grid-users',
                title:'Пользователи',
                width:1100,
                height:480,
                iconCls: 'icon-grid',
                animCollapse:false,
                constrainHeader:true,
                layout: 'fit',
                items: [
                    {
                        border: false,
                        xtype: 'grid',
                        store: store,
                        stateful: true,
                        stateId: 'tab_users',
                        plugins: [
                              'gridfilters'
                        ]
Ответить с цитированием
  #5 (permalink)  
Старый 28.01.2015, 11:20
Новичок на форуме
Отправить личное сообщение для marduk Посмотреть профиль Найти все сообщения от marduk
 
Регистрация: 01.02.2011
Сообщений: 4

Сообщение от novikov Посмотреть сообщение
может быть, использовать флаг stateful?
он и так используется
Сообщение от novikov Посмотреть сообщение
может быть, нужно заново отрендерить окно, после изменения настроек. Изменили, скажем, настройки и бросили событие.
при закрытии окна отрабатывает директива closeAction: 'destroy' и при следующем открытии этого окошка оно рендерится по новой (может кстати в этом и проблема)
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблемы со слайдером. Shupamen Работа 1 15.12.2013 00:12
проблемы с PagingToolbar serg3091 ExtJS 4 26.06.2013 09:33
Проблемы при установке модулей node.js tadjik1 AJAX и COMET 1 18.03.2012 02:20
глюк форума Gvozd Сайт Javascript.ru 11 18.03.2009 14:37
Drug&Drop + всплывание события = проблемы =(( _NoName_ Events/DOM/Window 4 05.03.2009 17:47