Как импортировать с конкатенацией с использованием Parcel? - PullRequest
0 голосов
/ 23 марта 2020

У меня есть каталог, полный JSON файлов. Я пытаюсь написать функцию для загрузки одного из них по имени во время выполнения. Когда я использую Webpack, я могу просто сделать что-то вроде этого:

const data = await import(`~/resources/levels-progression/${chapterName}.json`);

Однако в настоящее время я использую Parcel, и это просто приводит к ошибке:

TypeError : спецификатор модуля разрешения ошибок '~ / resources / levels-progression / functions. json'

Кажется, что Parcel игнорирует мой импорт, когда я делаю это таким образом. Как я могу это исправить?

1 Ответ

0 голосов
/ 23 марта 2020

На момент написания этого не было способа сделать это с помощью разделения кода, асинхронного качества в Parcel ( GitHub Issue ). Однако мы можем (вроде) закрыть, используя glob import :

const allData = require("../resources/levels-progression/*.json");

allData будет JS объектом с ключом для каждого файла, который присутствовал в каталоге.

Обратите внимание, что это не работает с импортом тильды.

...