/ / Obsługa wyjątków Gracefull w Windows Metro za pomocą WinJS - zdarzenia javascript, obsługa wyjątków, microsoft-metro, winjs

Obsługa wyjątków Gracefull w Windows Metro przy użyciu WinJS - zdarzenia javascript, obsługa wyjątków, microsoft-metro, winjs

Chcę przejść do strony głównej mojej aplikacji iwyświetla błąd przy użyciu FlyOut, gdy nieobsługiwane wyjątki w Metro Windows występują przy użyciu WinJS. Problem polega na tym, że program nadal przechodzi do terminateAppHandler w base.js.

Oto, co do tej pory otrzymałem:

WinJS.Application.onerror = function (customEventObject) {

// Get the error message and name for this exception
var errorMessage = customEventObject.detail.error.message;
var errorName = customEventObject.detail.error.name;

// Bind them in an optionsObject to pass with the navigation
var optionsObject = { errName: errorName, errMsg: errorMessage };

// Navigate home with information concerning the error
WinJS.Navigation.navigate("/pages/home/home.html", optionsObject);

// Need something to tell Windows that the error is "taken care" of
return false; // ??
}

Kończę tutaj, kończąc aplikację:

var terminateAppHandler = function (data) {
debugger;
MSApp.terminateApp(data);
};

Wszelkie sugestie lub wkłady są więcej niż mile widziane!

Odpowiedzi:

4 dla odpowiedzi № 1

Zwraca true zamiast false.

Będziesz także chciał podłączyć się do okna.onerror dla wyjątków, które nie są wysyłane przez aplikację. Jeśli nie ma wyjątku, jest on naprawdę nieobsługiwany i nie można przewidzieć, w jakim stanie jest aplikacja.


1 dla odpowiedzi nr 2

Powtórzenie prawdy powinno zrobić dokładnie to, czego potrzebujesz. Tego używam w mojej aplikacji.