Показать другую страницу по умолчанию в зависимости от сохраненного значения

Я пытаюсь создать приложение для магазина Windows, в котором страница по умолчанию (первая страница, которая появляется при загрузке приложения) изменяется в зависимости от сохраненного значения.

У меня есть следующие файлы

- js
   |- default.js
- default.html
- page_A.html
- page_B.html

default.js имеет следующий код:

if (localStorage["value"] == undefined || localStorage["value"] == "pageA") {
    localStorage["value"] = "pageA";
    //WinJS.Navigation.navigate("page_A.html");
    window.location.assign = "page_A.html";
} else {
    localStorage["value"] = "pageB";
    //WinJS.Navigation.navigate("page_B.html");
    window.location.assign = "page_B.html";
}

WinJS.Navigation код вообще не работает. Итак, я попытался использовать window.location, и вместо загрузки фактической страницы он загружает пустую страницу, как показано ниже.

Я пытался использовать как href, так и assign для объекта windows.location. Интересно то, что кажется, что href и assign загружают страницу, потому что, если у меня есть page_A/B.js, связанный с pageA/B.html, и простой оператор console.log, тогда оператор журнала регистрируется, но не отображает страницу. .

Любые идеи? Я застрял на некоторое время.

введите здесь описание изображения


person Harry Cho    schedule 05.12.2014    source источник


Ответы (1)


Попробуйте поместить default.js в корень вашего проекта, рядом с page_A.html и page_B.html, или, и я не знаю, сработает ли это, вы можете попробовать вызвать эти страницы с помощью ..\page_X.html.

Кроме того, вы можете добавить функцию обработки ошибок в свою навигацию на случай, если произойдет что-то еще, чего вы не видите.

WinJS.Navigation.navigate('page_A.html', {}).then(function () {
    // it worked!
}, function (err){
    // something went wrong
});
person sebagomez    schedule 07.12.2014
comment
Предложенное решение не сработало. Забавно, что навигация вызывает функцию в рабочей части, но текущая страница по-прежнему является страницей по умолчанию, а не page_A.html. - person Harry Cho; 14.12.2014