javascript - PhoneGap Windows Phone 8 - 从 www/文件夹访问资源

标签 javascript jquery cordova windows-phone-8

我正在 Windows Phone 8 上从事 PhoneGap 项目。 我找不到在运行时从我的 javascript 访问位于 www/ 文件夹中的资源的解决方案。

我的项目看起来像:

- www/
 `- css/
 `- js/
   `- main.js
   `- data1.json
   `- data2.json
 `- index.html

在我的脚本 main.js 中,我想加载 data1.jsondata2.json

我已经尝试了很多不起作用的解决方案:

来自 jquery 的 AJAX 函数

this.op = (function() {
  var val = null;
  $.ajax({
    async: false,
    url: 'www/js/data1.json',
    success: function(data) {
      console.log('DATA: ' + data);
      val = JSON.parse(data);
    }
  });
  return val;
})();

File plugin sample来自 PhoneGap

fileSystem.root.getFile("js/data1.json", null, gotFileEntry, fail);

我还尝试通过使用一个函数来检查文件系统,以列出根文件系统中的目录,这让我得到类似的结果:

`- /
  `- __Application Settings
  `- Microsoft
    `- Internet Explorer
      `- DCOM
  `- Shared
    `- Media
    `- ShellContent
    `- Transfers

这些文件夹中的任何一个都指向 www/ 或我的包。我找不到动态加载我的 *.json 文件的方法。

如有任何帮助,我们将不胜感激。

最佳答案

我的问题是使用亲戚路径访问我的文件。

我正在使用 requireJS 的插件来包含我的文件,但是这个插件为我的文件创建了荒谬的亲戚路径,例如 app/../js/data1.json

它现在运行良好。

编辑:我更改了插件中路径的计算以删除无用的目录更改,如下所示:

app/../js/data1.json

成为

js/data1.json

只需一个子字符串就足够了,因为每条路径都以相同的方式计算。

关于javascript - PhoneGap Windows Phone 8 - 从 www/文件夹访问资源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15095161/

相关文章:

cordova - 使用 Cordova/Phonegap 构建的应用程序启动后卡在黑屏上,安装后首次加载

javascript - 找不到动态 asp :Control inside a Gridview using JQuery

javascript - ReactJS 用于编辑评论

javascript - 如何检查完整的div是否有效?

javascript - 我如何让用户等到 session 组织者先加入后才能加入

android - 错误安装 Android 目标 - Cordova CLI

html - 使绝对div的内容可滚动

javascript - 使用 VueJS 和 Skeleton CSS 在 3 次项目迭代后创建新行

javascript - 谷歌分析事件跟踪 - 不工作

javascript - Bootstrap 模式未显示,但背景出现