У меня есть приложение Rally, которое требует значительного времени загрузки, и оно имеет некоторые циклы, содержащие Data Stores. Мне нужно найти условие, когда приложение завершило загрузку. Когда выполнение приложения будет завершено, я хочу обновить свою страницу. Есть ли что-то вроде onLoad(), которое я могу использовать, чтобы уведомить, что приложение загрузилось полностью, а затем я мог добавить window.location.reload
внизу?Приложение ралли onLoad
1
A
ответ
4
Я бы предложил использовать функцию обратного вызова для одного хранилища данных или ряд обещаний для нескольких хранилищ данных. Первый довольно простой, но я обычно обрабатываю последнее:
В этом случае я одновременно загружаю все Истории пользователей, дефекты и тестовые примеры в текущую область, затем, когда все записи были успешно загружены, будет вызвана функция «успех».
launch: function() {
Deft.Promise.all([
this.loadRecords('UserStory'),
this.loadRecords('Defect'),
this.loadRecords('TestCase')
]).then({
success: function(recordSets) {
// recordSets = [
// UserStoryRecords,
// DefectRecords,
// TestCaseRecords
// ];
},
failure: function() {
//Handle error loading the store here...
}
});
},
loadRecords: function(model) {
var deferred = Ext.create('Deft.Deferred');
Ext.create('Rally.data.WsapiDataStore', {
limit : Infinity,
model : model,
fetch : ['Name','ObjectID']
}).load({
callback : function(records, operation, success) {
if (operation.wasSuccessful()) {
deferred.resolve(records);
} else {
deferred.reject();
}
}
});
return deferred.promise;
}
Надеюсь, это поможет!
Смежные вопросы
- 1. Ралли-приложение исчезает - почему?
- 2. Приложение ралли SDK 2.0rc1 - Непринятое ReferenceError: ралли не определено
- 3. Приложение Django onload?
- 4. Приложение для настройки ралли - не удается аутентифицировать
- 5. Получить приложение ралли внутри гиперссылки html
- 6. Приложения для ралли-портфолио?
- 7. Запустить приложение для iPhone из html onload
- 8. Ралли: получить функцию бара
- 9. ралли копировать истории пользователей
- 10. сохранить выбранные опции ралли
- 11. создать/обновить историю пользователей, используя приложение ралли sdk
- 12. Ралли «Создание вашего первого приложения» приложение не запускается
- 13. Существующий пользовательский ралли-приложение является результатом получения результатов, как ожидалось
- 14. ралли приложение Фильтр Пример использование ИЛИ и операторам
- 15. Как добавить поле поиска в сетку ралли сетки/ралли дерева в ралли пользовательский отчет
- 16. Обновление моего приложения ралли от ралли SDK 1.32 до ралли SDK 2.0p5
- 17. Ралли: пусто История изменений в StandardCardRenderer
- 18. Графики, использующие ралли
- 19. Fetch дефекта от ралли, используя ралли отдых апи v2.0
- 20. Функция перетаскивания в таблицах ралли
- 21. Как получить результаты PortfolioItem в ралли SDK1.33?
- 22. Интеграция JIRA с ралли
- 23. Ралли: Родительское (рекурсивное) уведомление
- 24. Облако тегов ралли
- 25. Подзадачи в ралли
- 26. Ралли с черным фоном
- 27. ралли сортировки Материнской
- 28. Плагин TortoiseSVN для ралли?
- 29. Иерархическое отставание в ралли
- 30. Запрос ралли Проекты/Подпроекты
Привет, спасибо за ваш ответ. У меня есть цепочечная связь хранилищ данных, в которых я передаю результат из одного хранилища данных в следующий, это должно выполняться синхронно. Первое хранилище данных находится внутри цикла for. Я хочу, чтобы функция end() вызывалась, когда цикл for выполнялся полностью. Но это не работает. –
Я использовал 'Deft.Promise.all' для загрузки магазинов в parrallel, но вы могли бы так же легко сделать это серийно. Поскольку вы передаете один результат хранилища другому, я просмотрю документы для 'Deft.Chain.pipeline'. http://docs.deftjs.org/deft-js/0-8-0/#!/api/Deft.promise.Chain-method-pipeline –