我一直在寻找方法,但找不到路。我有4-5个json文件,它们具有相同的结构,但所有值都不同。基于存储在localStorage中的值,我想加载适当的json。目前,我在顶部加载文件:
import * as data_json from "../app_data_files/file.json";
我尝试做。例如根据这种情况,导入文件1
if ( 1 ==1){
import * as data_json from "../app_data_files/file1.json";
}
但是打字稿抱怨一个导入语句只能在模块或命名空间中发生。
localstarge中的值与要加载的文件匹配,因此我无法真正预测。我要检查的只是是否有价值。如果不是,将使用默认的最上面的一个。希望有道理。
我该怎么做?
答案 0 :(得分:1)
尝试使用动态导入:
const data_json = import("../app_data_files/file1.json");
注意:动态导入将返回一个承诺。您可以使用async / await或.then来获取json对象
答案 1 :(得分:0)
我认为您应该使用HttpClient加载json配置。
您可以使用以下方法:
let myConf:any;
this.http.get("your_config.json").subscribe(res=>{this.myConf=res})