А как я буду работать с данными, которые ещё не пришли?
Ну допустим у вас есть функция, которая обращается к данным. Если данные есть, она делает что-то. Если нет, она грузит, дает задание запустить себя с этими же параметрами по onLoad и прекращает работу. Это только как вариант.