Javascript Typescript将json预编译为变量
在XHR请求不允许使用file://protocol的本地Webapp中,是否可以将json文件预编译为变量 打字伪码Javascript Typescript将json预编译为变量,javascript,json,typescript,Javascript,Json,Typescript,在XHR请求不允许使用file://protocol的本地Webapp中,是否可以将json文件预编译为变量 打字伪码 [JSON("Filename,json"), options] public myFunc() : void { //i can use "options" as a variable here console.log(options); } 预期的Javascript输出 var options = "{jsonfile content}"; funct
[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(例如,chrome完全不允许使用jsonp作为文件:/)
- 将本地json文件加载到javascript变量的预编译器指令
- 还有其他可能的解决方案吗
// 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);
}
//文件a
var json={
“foo”:“foo的内容”,
“条”:[“一些”,“数组”]
}
var jsonContent=JSON.stringify(JSON);
//文件b
///
//我想你可能想要json而不是jsonContent
var options=jsonContent;
函数myFunc(){
console.log(选项);
}
然后使用
--out
编译器标志编译文件b,以获得一个合并的javascript文件 Thx@basarat,但解决方案的问题是json文件中json变量的声明。我在其他地方使用这个json文件,需要的内容是纯json。我建议编写一个小实用程序,将.json
文件转换为.ts
文件,并使用显示的语法