Javascript Runtime Error: 'Application is undefined'

Javascript Runtime Error: 'Application is undefined'

我想知道这是否正确。我刚刚开始使用 WinJS 进行应用程序开发。我已经确定了问题的根源并解决了它,但我不知道这是否正确method.Please 求助!

// Optimize the load of the application and while the splash screen is
// shown, execute high priority scheduled work.

ui.disableAnimations();
var p = ui.processAll().then(function () {
    //return nav.navigate(nav.location || Application.navigator.home, nav.state);
        return nav.navigate(nav.location || app.local, nav.state)
    }).then(function () {
        return sched.requestDrain(sched.Priority.aboveNormal + 1);
    }).then(function () {
        ui.enableAnimations();
    });

问题出在第一个.then()。注释行是默认行,我已将其更改为应用程序 work.I 完全不知道它是什么 is.Please 告诉我它的含义和更改的内容。顺便说一下,'app' 是 WinJS.Application,Application 是 navigator.js 中的一个 WinJS 命名空间,home 属性 所在。

此错误表明 navigator.js 未在执行此代码时加载。 Application 命名空间完全是任意的,与 WinJS.Application 无关,仅在 navigator.js 中定义,因此如果未加载该文件,则该命名空间将不存在。

顺便说一句,WinJS 命名空间只是 JavaScript 中模块模式的一种形式化,可帮助您避免全局命名空间变得混乱。声明一个像 navigator.js 这样的命名空间是这样的:

 WinJS.Namespace.define("Application", {
     PageControlNavigator: WinJS.Class.define( 

只是在名为 "Application" 的全局命名空间中创建一个对象,然后为其定义成员。 (顺便说一句,您可以将 "Application" 更改为您想要的任何内容。navigator.js 中的任何其他内容都不依赖于它,而 navigator.js 是来自 Visual Studio 中的应用程序模板的东西并且不是 WinJS 本身的一部分。)

因此,我再次怀疑您的 default.html 中没有(或任何正确的路径),它的路径不正确,或者它可能在其他代码正在尝试执行。尝试在 WinJS.Namespace.define 上设置断点并查看是否已加载该文件并命中断点。