У меня есть объект Javascript сделал так:Javascript подписаться на функцию обратного вызова после того, как при создании экземпляра
function App(callback){
// Call some "long running functions meant for initialization
callback(this);
}
В моей главной странице шаблона (_Layout.cshtml на ASP MVC) Я его создании экземпляра, как это:
_Layout.cshtml
var oApp = new App(function(initializedApp){
// Instanciate here other Javascript components that depend on
// App initialization
var oComponent1 = new Component1(initializedApp);
});
Это прекрасно работает! Компонент1 инициализирован afte. Приложение завершило инициализацию, и все идет хорошо.
Оценка ошибок в Page1.cshtml (которая отображается внутри _Layout.cshtml и имеет доступ к oApp). Page1 также должен инициализировать свой собственный компонент, для которого приложение должно быть полностью инициализировано.
Page1.cshtml
// How do I "subscribe to the App callback function so that Compnent2, s
// specific to the Page1.cstml, is initialized afetr App has finished
// its initialization ???
var oComponent2 = new Compnent2(oApp);
oApp.callback(); // ???
oApp(function(initializedApp){ // code here... }); //???
Благодаря
Lorenzo
Как это предотвращает COMPONENT2 (. ..) для инициализации после того, как приложение завершит процесс инициализации? –
Вы можете переместить создание 'oComponent2' в обратный вызов, который вы зарегистрировали:' var oComponent2; oApp.addCallbacks (function (oApp) {oComponent2 = новый Compnent2 (oApp);}); ' –
Спасибо Джеймсу, я попробую. До сих пор я использовал другое обходное решение, но в любом случае я попробую ваш код. –