2016-06-17 3 views
2

Страница документации для Application Management описывает совокупность событий жизненного цикла приложения и способы их использования в javascript. Но я не мог узнать, как их использовать, когда я пишу свое приложение {N}, используя Angular.Как использовать {N} события жизненного цикла приложения в Angular?

В углу есть страница документации для Application Management, но она такая же, как для ядра NativeScript.

Как я могу использовать эти события в Angular?

+0

Странная вещь, я не понимаю, как пройти в пользовательских обработчиках в nativeScriptBootstrap(), который вызывает метод application.start() и регистрирует обработчик события create. Документация должна быть неправильной. – SacWebDeveloper

+0

https://github.com/NativeScript/nativescript-angular/blob/master/nativescript-angular/application.ts – SacWebDeveloper

+0

Что вы пытаетесь достичь? Например, поле «ngOnInit()» полезно, есть несколько более аккуратных гибридных tns и ng2, которые лучше, чем чистый tns-подход. –

ответ

0

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

Например, для прослушивания события начала приложения, вы должны добавить слушатель в вашем main.ts:

import { platformNativeScriptDynamic } from "nativescript-angular/platform"; 
import { AppModule } from "./app.module"; 
import { on as applicationOn, launchEvent, ApplicationEventData} from "application"; 

applicationOn(launchEvent, function (args: ApplicationEventData) { 
    if (args.android) { 
     // For Android applications, args.android is an android.content.Intent class. 
     console.log("Launched Android application with the following intent: " + args.android + "."); 
    } else if (args.ios !== undefined) { 
     // For iOS applications, args.ios is NSDictionary (launchOptions). 
     console.log("Launched iOS application with options: " + args.ios); 
    } 
}); 

platformNativeScriptDynamic().bootstrapModule(AppModule);