如何使用VueJS / Typescript导入JSON文件?

时间:2019-02-01 09:56:45

标签: javascript typescript vue.js

我刚刚创建了一个干净的VueJS新项目,但无法加载JSON文件来工作。

复制/发行

为了便于复制,我创建了一个Github存储库,其中包含以下内容: https://github.com/devedse/VueJSImportJsonFile

在Home.vue页面中,我试图让Json加载工作。 (https://github.com/devedse/VueJSImportJsonFile/blob/master/src/views/Home.vue

在VSCode中打开此解决方案时,以下行显示错误:

import theJson from '@/assets/hi.json';

Error in VSCode Can't find module '@/assets/hi.json'

运行NPM服务时,会弹出以下错误: enter image description here

我已经尝试过的东西

我已经搜索了所有stackoverflow并尝试了以下文章中的所有内容:

Importing json file in TypeScript

Typescript compiler error when importing json file

https://github.com/chybie/ts-json

编辑1:

好吧,现在我通过将其添加到tsconfig.json中,设法使其在运行npm run serve时起作用:

{
  "compilerOptions": {
    "resolveJsonModule": true
  }
}

但是VSCode中的错误似乎仍然存在。有没有办法解决这个问题?

1 个答案:

答案 0 :(得分:2)

只需将resolveJsonModule": true添加到tsconfig.json下的compilerOptions

diff --git a/tsconfig.json b/tsconfig.json
index 499f5e2..a05dab1 100644
--- a/tsconfig.json
+++ b/tsconfig.json
@@ -6,6 +6,7 @@
     "jsx": "preserve",
     "importHelpers": true,
     "moduleResolution": "node",
+    "resolveJsonModule": true,
     "esModuleInterop": true,
     "allowSyntheticDefaultImports": true,
     "sourceMap": true,