7
votes

Extjs Combo n'arrête pas de charger 4.07

J'ai 3 box combo. Lorsque vous cliquez sur la première case, la deuxième case doit mettre à jour indiquant les données correspondantes. Je sélectionne le premier combo La deuxième boîte mises à jour parfaitement. Toutefois, si j'essaie à nouveau les mêmes étapes, la deuxième boîte ne cesse pas de charger (voir image)

Entrez la description de l'image Ici

voici le code de ma vue xxx

et de mon contrôleur xxx


0 commentaires

4 Réponses :


10
votes

Bug connu:

http: // www.sencha.com/forum/showthread.php?153490-combo-box-box-box-box-box-loading p>

Ajout de cela devrait le trier: P>

store.on('load', function (store, records, successful, options) {
    if (successful && Ext.typeOf(combo.getPicker().loadMask) !== "boolean") {
        combo.getPicker().loadMask.hide();
    }
});


0 commentaires

2
votes

J'ai constaté que l'accrochage dans l'événement "Développer" sur le combo fonctionnait mieux (accrocher dans "Charge" sur le magasin détruit en quelque sorte la liaison du combo au magasin, faisant toutes sortes d'erreurs horribles et difficiles à suivre) .

combo.on('expand', function (field, options) {
    if (Ext.typeOf(field.getPicker().loadMask) !== "boolean") {
        field.getPicker().loadMask.hide();
    }
}, this);


0 commentaires

4
votes

J'ai eu le même symptôme avec un magasin de données local avec ExtJS Combobox, mais le correctif correct était de définir la requête de QueryMode dans la liste déroulante - Il n'y a pas de bogue dans le magasin (au moins dans la version 4.1 de ExtJS). QueryMode doit être réglé sur "local" au lieu de sa valeur "à distance" par défaut, si vos données sont stockées localement dans le magasin de données (comme dans mon exemple de travail ci-dessous).

Combobox: P>

Ext.define('DiskApp.store.UnitsStore', {
extend: 'Ext.data.Store',

requires: [
    'DiskApp.model.UnitsModel'
],

constructor: function(cfg) {
    var me = this;
    cfg = cfg || {};
    me.callParent([Ext.apply({
        autoLoad: false,
        model: 'DiskApp.model.UnitsModel',
        storeId: 'MyStore',
        data: [
            {
                abbr: 'MB',
                units: 'M'
            },
            {
                abbr: 'GB',
                units: 'G'
            },
            {
                abbr: 'TB',
                units: 'T'
            }
        ]
    }, cfg)]);
}


0 commentaires

2
votes

Une solution vraiment simple consiste à ajouter le listconfig config vers votre liste déroulante: xxx


0 commentaires