タイプスクリプト2.9以降、jsonを直接インポートできることを説明した記事をいくつか読んだことがあります。それで、私はtsconfig.jsonファイルを次のように修正しました:
{
"compileOnSave": false,
"compilerOptions": {
"baseUrl": "./",
"outDir": "./dist/out-tsc",
"sourceMap": true,
"declaration": false,
"downlevelIteration": true,
"experimentalDecorators": true,
"module": "esnext",
"moduleResolution": "node",
"importHelpers": true,
"target": "es2015",
"typeRoots": [
"node_modules/@types"
],
"lib": [
"es2018",
"dom"
]
},
"angularCompilerOptions": {
"fullTemplateTypeCheck": true,
"strictInjectionParameters": true
},
"paths": {
"@data/*": ["src/core/data/*"],
"@models/*": ["src/core/models/*"],
"@services/*": ["src/core/*"],
"@environments/*": ["src/environments/*"]
},
"resolveJsonModule": true,
"esModuleInterop": true,
"allowSyntheticDefaultImports": true
}
次に、jsonを次のようにコンポーネントにインポートしました。
import particlesJson from '../../assets/particles.json';
正常に動作しますが、コンソールでエラーが発生します。
Src/app/profile/login.component.ts(3,27)のエラー:エラーTS2732:モジュール '../../assets/particles.json'が見つかりません。拡張子が「.json」のモジュールをインポートするには、「-resolveJsonModule」の使用を検討してください
そのエラーが表示されないようにするにはどうすればよいですか?
ドキュメントであるLppEddソリューションを使用する場合でも。私の唯一の解決策は、// @ ts-ignoreを追加することでした。jsonファイルを正常に取得できました。
バージョン:8