машинописный текст: импортировать только тип из файла JSON - PullRequest
0 голосов
/ 02 июля 2019

Есть ли способ импортировать только JSON файл type? У меня есть сложный файл JSON, и мне нужно, чтобы его определение использовалось во всем приложении, но когда я делаю import * as data from 'data.json', импортируется весь файл, что вызывает его присутствие в сборке (с использованием веб-пакета). Насколько я знаю, нет способа исключить это в webpack config.

EDIT: Мой вопрос может быть немного неясным, поэтому вот мой пример:

import * as data from 'data.json'
// data looks like this:
// { 
//   a: {
//    b: 'something1'
//   },
//   c: {
//    d: 'something2'
//   }
// } 

export type typedJson = typeof data;
// which should show on hover/autocomplete: { "a": { "b": "string" }, "c": { "d": "string" } }

Но когда я это делаю, весь файл data.json импортируется, и он присутствует в комплекте веб-пакета. Есть ли способ получить эти наборы и исключить их из набора?

1 Ответ

1 голос
/ 02 июля 2019

Вы можете использовать тип импорта, чтобы получить только тип файла json:

type JsonDataType = typeof import('./data.json')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...