0

在 XHR 请求不允许使用 file:// 协议的本地 Web 应用程序中,是否可以将 json 文件预编译为变量?

打字稿伪代码

[JSON("Filename,json"), options]
public myFunc() : void {
     //i can use "options" as a variable here
    console.log(options);
}

预期的 Javascript 输出

var options = "{jsonfile content}";
function myFunc() {
    console.log(options);
}

是否有任何库管理 [JSON("Filename,json"), options] 在编译成 javascript 期间将 Filename.json 的内容加载到名为 options 的变量中?

恢复

  • 本地应用程序(文件://)
  • 不允许 Ajax(即使没有 jsonp as file:// 也完全被 chrome 所禁止)
  • 将本地 json 文件加载到 javascript 变量中的预编译器指令
  • 还有其他可能的解决方案吗?
4

1 回答 1

0

TypeScript 没有属性。但是,您可以非常简单地执行以下操作:

// file a 
var json = {
    "foo" : "foo's content",
    "bar" : ["some","array"]
}
var jsonContent = JSON.stringify(json);

// file b 
///<reference path="./a.ts"/>
// I think you probably want json not jsonContent
var options = jsonContent; 
function myFunc() {
    console.log(options);
}

然后使用编译器标志编译文件 b--out以获得一个合并的 javascript 文件。

于 2013-09-10T12:03:28.630 回答