我正在尝试创建一个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
语句,然后日志语句会被记录,但它不会呈现页面。
有什么想法吗?我已经被困了一段时间。
答案 0 :(得分:0)
尝试将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
});