Как заставить мой U_store.load () бесконечно ждать в extjs - PullRequest
0 голосов
/ 20 августа 2010

как заставить мой U_store.load () ждать бесконечно

var U_store = new Ext.data.JsonStore({      
    id:'jfields',
    totalProperty:'totalcount',
    root:'rows',
    url: 'first-utility/index_json.php', 
});

мой index_json.php возвращает результат через 10 минут, но load () в extjs не ждет так долго, как сразу возвращается, может кто-нибудь помочь мне, как получить результат из index_json.php ??

Ответы [ 3 ]

1 голос
/ 20 августа 2010

Ваши пользователи будут ждать 10 минут для загрузки данных?

Вам, вероятно, будет лучше с решением, основанным на периодическом опросе, а не на "бесконечном" ожидании. Может быть, начальный вызов запускает ваш длинный процесс, и у вас есть отдельный вызов, который проверяет результаты? Не зная, что ты делаешь, трудно понять, каков наилучший подход.

0 голосов
/ 20 августа 2010

Чтобы ответить на его вопрос в том виде, в котором он был задан, я бы попытался использовать объект Ext.Ajax, поскольку там можно определить время ожидания.

В случае успеха Ajax вы можете взять объект ответа и создать хранилище данных, используя что-то вроде:

var myResponseData = response.responseText;
myStore.loadData(myResponseData);

Недостатком этого маршрута является то, что вы не можете снова использовать Ext.Ajax, пока он обрабатывает запрос, поскольку он является статическим членом.

Это может занять некоторое время, но я надеюсь, что основная идея - это звук. Если кто-то видит проблему с этой идеей, я хотел бы знать. Это заставляет меня думать

0 голосов
/ 20 августа 2010

Почему бы вам не собрать всю информацию и не сохранить ее в базе данных / файле отдельным процессом, а затем вы можете легко загрузить хранилище из данных базы данных.

На самом деле, если загрузка данных занимает 10 минут, то я думаю, что это должно быть огромное количество данных.Если возможно, тогда вы можете перейти к частичной загрузке данных в зависимости от событий / действий клиента.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...