Всем привет. как правильно импортировать json как обычный файл (вроде

картинки) и получить путь к нему? типа

import f from './file.json'
console.log(f) // -> /file.123456.json

если добавить правило в file-loader, билд падает с
Module parse failed: Unexpected token m in JSON at position 0 while parsing near 'module.exports = __w...'
видать file-loader выдал экспортирующий путь модуль-заглушку, но вебпак всё равно пытается это парсить как json

24 ответов

56 просмотров

Если не ошибаюсь, import * from Попробуй. Если не сработает - с позором удалю сообщение.

3bl3gamer- Автор вопроса

Ну логично же - так же как и другие ресурсы через ассетс лоадер

https://webpack.js.org/guides/asset-modules/

У тебя 5ый пак?

3bl3gamer- Автор вопроса
CherryTea 🇺🇦
Ну логично же - так же как и другие ресурсы через ...

точно, забыл про него, спасибо. да, пятый. а можно ли ещё как-то выхлоп оптимизировать, а то на import f from './file.json' console.log(f) он теперь генерит var r, o = { 211: (r, o, e) => { r.exports = e.p + "file.9d4ff493.json"; }, }, e = {}; function t(r) { var p = e[r]; if (void 0 !== p) return p.exports; var s = (e[r] = { exports: {} }); return o[r](s, s.exports, t), s.exports; } (t.p = "/"), (r = t(211)), console.log(r);

3bl3gamer- Автор вопроса
3bl3gamer
(t.p = "/"), console.log(t.p + "file.9d4ff493.json...

Что б такую красоту делать надо не вебпаком собирать

3bl3gamer
(t.p = "/"), console.log(t.p + "file.9d4ff493.json...

Я так понимаю вы такое хотите https://www.npmjs.com/package/@chialab/esbuild-plugin-meta-url

3bl3gamer- Автор вопроса
CherryTea 🇺🇦
Так это не модуль

а кто? если собрать с minimize: false, он в каментах это тоже модулем называет

3bl3gamer- Автор вопроса
CherryTea 🇺🇦
Код предложенный вами не модуль

в смысле? мой код с консоль.логом не модуль?

3bl3gamer
screenshot а кто? если собрать с minimize: false, он в камент...

реализация рекваера вебпаковского к чему тут она скинута я не понял

3bl3gamer- Автор вопроса

у меня всё-таки есть надежда, что нет. потому что // some_path.js export default __webpack_public_path__ + 'the-path-to-file.ext' // index.js import f from './some_path.js' console.log(f) таки билдится компактно без всяких кусков вебпакового рантайма: console.log("/the-path-to-file.ext");

3bl3gamer
у меня всё-таки есть надежда, что нет. потому что ...

Типо он сразу инлпйнит значение которое вы экспортнули?

3bl3gamer
ну да

А если минификацию отключить?

3bl3gamer
у меня всё-таки есть надежда, что нет. потому что ...

А вы точно уверены, что этот момент — и есть bottleneck #1 вашего приложения?

3bl3gamer- Автор вопроса

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

3bl3gamer
конечно нет. но если он рядом только что билдил но...

Можно сразу ищти в вебпак репозиторий смотреть сорсы. Если повезет там есть тест на эту фичу по которому легко будет найти логику

Похожие вопросы

Обсуждают сегодня

Добрый вечер, Пока не совсем понимаю как наладить общение между телеграм ботом и ПО для работы с сим боксом. По самому боту так понял: - Нужен некий баланс, который можно поп...
Magic
6
Коллеги, может знает кто, можно ли цвет бейджа счётчика в BackendMenu менять без бубнов?
Alex Blaze
3
Всем привет. Ребята, подскажите, пожалуйста. у ботов есть ограничение на отправку сообщений - 30 сообщений в секунду, эти ограничения накладываются на все сообщения? или на со...
Artem Stormageddon
4
Привет!) Кто как юзает переменные в строках?) Чисто ради интереса Вот так: echo "У меня {$bananasAmount} бананов"; Или вот так: echo "У меня ${bananasAmount} бананов";
Виталий
3
разработчик ботов скидывает портфолио, боты которые он уже создал. А вот как узнать что это именно он их создал?
Gosudar
4
а плаксы из-под питона умеют только в комфортных условиях что-то выдавить из себя?)
Lencore
9
Но, может, есть уже проверенная? Наши требования такие: 1. Сообщения должны приходить из Инста в CRM оду 2. Должна быть возможность подключить несколько экаунтов Инстаграм. Р...
Alexander Sharoiko MSE / Александр Шаройко
13
кто-нибудь уже пробовал это?
Lencore
4
Это может быть все-таки не флудвейт? у меня ботфазер принимает изменения и отображает даже что они изменились, на видео видно что он прислал якобы уже измененное описание, н...
OVERLINK
13
❓ Подскажите как сделать в группе телеги функцию (кнопку) пересылки сообщения где есть нарушение правил? Бот к каждому сообщению (по определенным ключам) добавляет снизу кнопк...
Alexander
4
Карта сайта