将json文件导入angular 4.x TypeScript应用程序

时间:2018-06-05 11:19:07

标签: json angular typescript

假设我有以下json文件(角度应用程序的根):

{
   "propertyName": "ABC"
}

我知道TypeScript无法直接处理JSON导入,因此我根据使用通配符(typings.d.ts)的TypeScript模块文档对以下模块进行了描述:

declare module "*.json" {
  const value: any;
  export default value;
}

现在我能够导入一个本地json文件(上面的结构),如下所示:

import * as config from './config.json';

之后我可以使用导入的任何属性:

let propertyA: string = (<any>config).propertyName;

一切都很好,但是当我尝试使用

let propertyA: string = config.propertyName;

我收到以下错误消息:

  

src / main.ts(9,26)中的错误:错误TS2339:属性'propertyName'   在'typeof'* .json“'。

类型中不存在

有关如何在构建过程中避免此错误的任何建议吗?该过程成功完成(包括此错误消息),我可以使用Web应用程序以及所需的属性。它只是生成错误消息

1 个答案:

答案 0 :(得分:0)

我有一个类似的问题,因为它是一个json文件,没有模块而且不需要编译,你可以像在javascript中一样导入它

const config = require('./config.json');

然后在访问配置属性时没有任何错误,它仍然可以正常工作。

请记住,您可能需要导入 @ types / node 包才能使用 require 方法。