在typescript Angular 5中导入json文件

Taw*_*laf 2 typescript ionic2 ionic3 angular angular5

我试图在typescript类中导入json文件

import * as nationalities from './mock/nationalities.json';
Run Code Online (Sandbox Code Playgroud)

它给了我一个错误

找不到模块'./mock/nationalities.json'.

为了解决这个问题,我添加了这个

declare module '*.json' {
  const value: any;
  export default value;
}
Run Code Online (Sandbox Code Playgroud)

但它没有解决我的问题,也给了我另一个错误异常

增强中的模块名称无效,无法找到模块'*.json'.

我的打字稿版本

2.9.2

Ben*_*ure 10

基于这篇文章,这里是Angular 6+的完整答案:

假设您将json文件添加到"your-json-dir"目录中:

  1. 将"your-json-dir"添加到angular.json文件中(:

    typings.d.ts

  2. 允许将json模块导入typings.d.ts文件以防止出现打字稿错误:

    tsconfig.json

  3. 在您的控制器/服务/任何其他文件中,只需使用此相对路径导入文件:

    /src