【问题标题】:Declaring WinJS.xhr globally in win 8 metro app在 win 8 Metro 应用程序中全局声明 WinJS.xhr
【发布时间】:2013-02-02 15:23:11
【问题描述】:

我正在开发 Windows 8 Metro 应用程序。我有一个问题,我有一个中心页面,我从 XML API 动态推送数据。我使用了两个 WinJs.xhr(" url" ) 一个 url 来推送标题,一个 url 来将数据推送到部分中。现在的问题是,当我合并两个 winjs 并尝试推送到项目时,第二个 winjs 项目被推送而不是第一个。我必须在全球范围内声明第一个网址,因为我有很多页面。所以在哪里以及如何全局声明它。>

【问题讨论】:

    标签: javascript html winjs


    【解决方案1】:

    WinJS 中的全局对象仍然是window 所以这样声明:

    window.url = url;
    

    【讨论】:

      【解决方案2】:

      你可以用这个在 default.js 中定义一个自定义的命名空间

      WinJS.Namespace.define("MYAPP",
      {
      gvar:123,
      myurl1:'http://example.com/url1',
      myurl2:'http://example.com/url2'
      }
      );
      

      然后,首先包含 js 并像这样设置 xhr url:

      WinJS.xhr({url:MYAPP.myurl1})....
      
      ....
      
      WinJS.xhr({url:MYAPP.myurl2})....
      

      【讨论】:

      • 感谢您的回复。我在 default.js 中定义,我应该在相同的 default.js 或在获取数据的 js 页面中包含和设置 js 和 xhr 吗?因为当我包含在 hubPage.js 中时,它给了我一个重定向到 base.js 的错误,说系统无法重新定位资源。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-08-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多