цепочка функций в ui5

#javascript #sapui5

#javascript #sapui5

Вопрос:

Я запустил свою программу в dev, все работает нормально, затем я перехожу к тестированию и получаю ошибки нулевой ссылки. Я думаю, это связано с тем, как работает javascript, и что мне нужно связать мои функции. На данный момент у меня есть 3 функции onAfterRendering.

this.loadModels();
this.setInitModels();
this.setContentParams();

ошибка возникает в последней функции. Я пытаюсь понять, как выполнить функцию load models, затем по завершении выполните setInitModels, а затем, когда это завершится, выполните setContentParams, исправит ли это в нижней части этой функции или мне нужно связать это другим способом.

Комментарии:

1. В чем ошибка в консольном отладчике?

2. Происходит ли что-то асинхронное? Если да, вы должны поместить в свои последующие функции какой-то успешный обратный вызов. Например, у a JSONModel есть метод attachRequestCompleted , который принимает функцию, которая будет вызвана после запуска события. Затем эта функция может вызывать ваши последующие функции.

Ответ №1:

Подсказка Марка важна и правильна. Не зная, что на самом деле происходит внутри ваших функций, трудно дать правильный ответ. Другим способом было бы использовать promises, что-то, что легко понять и поддерживать.