2

WinJS を使用して Windows Metro で未処理の例外が発生したときに、アプリのホーム ページに移動し、FlyOut を使用してエラーを表示したいと考えています。問題は、プログラムがまだterminateAppHandlerbase.js に続くことです。

これは私がこれまでに得たものです:

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; // ?? 
}

ここで終了し、アプリを終了します。

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

どんな提案や意見も大歓迎です!

4

2 に答える 2

4

false の代わりに true を返します。

また、application.onerror 経由で送信されない例外については、window.onerror に接続する必要があります。ただし、例外が発生した場合、それは本当に未処理であり、アプリがどのような状態にあるかを予測することはできません.

于 2012-08-06T15:16:05.970 に答える
1

trueを返すと、必要なことを正確に実行できます。それが私のアプリケーションで使用しているものです。

于 2012-08-06T15:25:58.433 に答える