How do you import a JSON file with VueJS / Typescript?

社会主义新天地 提交于 2021-02-19 01:43:10

问题


I just created a clean VueJS new project and I can't get loading a JSON file to work.

Reproduction / Issue

For easy reproduction I've created a Github repo with my issue: https://github.com/devedse/VueJSImportJsonFile

In the Home.vue page I'm trying to get Json loading to work. (https://github.com/devedse/VueJSImportJsonFile/blob/master/src/views/Home.vue)

When you open this solution in VSCode the following line shows an error:

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

Can't find module '@/assets/hi.json'

When running NPM Serve the following error pops up:

What I've already tried

I've already searched all of stackoverflow and tried everything in the following posts:

Importing json file in TypeScript

Typescript compiler error when importing json file

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

Edit 1:

Ok I now managed to get it to work when running npm run serve by adding this to the tsconfig.json:

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

However the error in VSCode seems to stay. Is there a way to fix this too?


回答1:


Simply add resolveJsonModule": true to your tsconfig.json under 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,


来源:https://stackoverflow.com/questions/54476994/how-do-you-import-a-json-file-with-vuejs-typescript

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!