Il y a un magasin de données dans mon application qui, sur une action utilisateur spécifique, est chargé avec un ensemble de données assez volumineux via un fichier txt local (100kb au total). Avant ma mise à niveau vers Sencha 2.2, le chargement de cet ensemble de données était assez rapide et il n'y avait aucun impact sur les performances de l'application.(Nouveau dans Sencha 2.2) Le magasin de données charge les données pour les gros fichiers
Maintenant que j'ai mis à niveau vers Sencha 2.2, le chargement de ces données gèle complètement l'application. Même si je cours l'application sur mon ordinateur, il faut environ 5 minutes pour que l'application se dégèle.
J'ai essayé deux approches: setData() et chargement via un proxy (code ci-dessous). Les deux approches ont le même résultat. J'ai passé au crible le changelog de Sencha 2.2 et n'ai pas pu trouver n'importe quels changements appropriés aux magasins de données. Je suis plutôt bien perdu ici. Toute aide serait géniale.
approche proxy locale:
Ext.define("addable_exercises", {
extend: "Ext.data.Model",
config: {
idProperty: 'id',
fields: [
{ name: 'ex_id'},
{ name: 'ex_name'},
{ name: 'ex_alias'},
{ name: 'ex_type'},
{ name: 'prot_type'}
]
}
});
var all_exercises = Ext.create('Ext.data.Store', {
storeId: 'all_exercises',
model: 'addable_exercises',
proxy: {
type: 'ajax',
url: 'resources/textfiles/datastores/all_exercises.txt'
}
});
Ext.getStore('all_exercises').load()
approche setData():
Ext.define("addable_exercises", {
extend: "Ext.data.Model",
config: {
idProperty: 'id',
fields: [
{ name: 'ex_id' },
{ name: 'ex_name'},
{ name: 'ex_alias'},
{ name: 'ex_type'},
{ name: 'prot_type'}
]
}
});
var all_exercises = Ext.create('Ext.data.Store', {
storeId: 'all_exercises',
model: 'addable_exercises'
});
Ext.Ajax.request({
url: 'resources/textfiles/datastores/all_exercises.txt',
success: function(response, opts) {
var exercise_list = response.responseText;
var all_exercises_store = Ext.getStore('all_exercises');
all_exercises_store.setData(exercise_list);
}
});