首页 > 解决方案 > 基于条件的角度导入json文件

问题描述

我一直在寻找方法,但找不到路。我有 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 中的值与要加载的文件匹配,因此我无法真正预测。我检查的只是是否有价值。如果不是,将使用加载的默认顶部。希望这是有道理的。

我怎样才能做到这一点?

标签: angularangular5

解决方案


尝试使用动态导入:

const data_json = import("../app_data_files/file1.json");

注意:动态导入将返回一个承诺。您可以使用 async/await 或 .then 来获取 json 对象


推荐阅读