@webpack_ru
Webpack — русскоговорящее сообщество

Обсуждения webpack, лоадеров, плагинов и сборок Правила: http://bit.ly/our_etiquette См. также: @rollup_ru, @react_js, @vscode_ru, @macos_ru, @js_ru

974 members

Архив канала @webpack_ru 30 мая 2017 г.

04:19:08 ДП
User 61358630
Нужна Крозапускаемость в окнах
12:00:05 ПП
User 156805060
есть какие нить варианты заставить vscode/*storm резолвить классы с использованием resolve.alias?
12:04:20 ПП
User 156805060
а то фича то хорошая, но если импорты не резолвятся в редакторе то вообще не юзабельно
12:13:24 ПП
User 156805060
мм ну ладно, в ts это хотя бы лечится с помощью tsconfig
01:02:56 ПП
User 38133063
Ребята, а есть какой-то способ убрать из билда модули, которые только реэкспортом занимаются? А то они ломают весь code splitting. Но в то же время очень удобны в разработке
01:03:31 ПП
User 52321317
я делаю 2 точки входа: для дева и для прода
01:04:48 ПП
User 52321317
или ты о чем-то другом?
01:05:56 ПП
User 38133063
но ведь без переписывания импорта не выйдет. Например у меня есть прорва компонентов, которые используются так:
import {Button} from "src/components"
где src/components выглядит так:
export * from "./Button/Button"
Соответственно весь файл src/components состояит из реэкспортов. И он не нужен в проде, то есть в проде я хочу чтобы import {Button} from "src/components" заменилось на import {Button} from "src/components/Button/Button", с использованием информации из src/components.
01:06:54 ПП
User 38133063
Я как бы написал бабель плагин уже, и всё такое, но он получился слишком хардовым и много чего ломает, например кеширования бабель-лоадера. Кажется, что вебпак сам такое должен делать механизмом tree-shake
01:07:29 ПП
User 97081120
а то есть импорты в проде тебя устраивают?
01:07:38 ПП
User 97081120
ты только на своем последнем хроме что ли запускать собрался?
01:07:58 ПП
User 156805060
мб заалиасить можно как нить для прода. тип подменить модуль который реэкспортит на тот который он экспортит
01:08:07 ПП
User 38133063
User 156805060
мб заалиасить можно как нить для прода. тип подменить модуль который реэкспортит на тот который он экспортит
о чём и речь
01:08:20 ПП
User 38133063
User 97081120
а то есть импорты в проде тебя устраивают?
я импорты в вебпак отдаю и дальше оно само и всё работает, речь не об этом
01:08:56 ПП
User 38133063
Но тут не алиас, а именно выпиливание модуля который чисто для реэкспорта, как ненужного
01:09:02 ПП
User 97081120
а о чем? как будто у тебя от того, что ты реэкспорты на что-то заменишь бандл поменяется
01:09:06 ПП
User 156805060
попробуй сделать "exporter.js"$ : "exported.js" мб
01:09:08 ПП
User 156805060
ну так
01:09:34 ПП
User 156805060
вместо того который у тебя перэкспорт делает типа заимпортится сразу конечный
01:09:45 ПП
User 156805060
(если конечно можно сделать как я написал)
01:09:53 ПП
User 38133063
User 97081120
а о чем? как будто у тебя от того, что ты реэкспорты на что-то заменишь бандл поменяется
Блин, понятно дело что import потом на require заменяется, но require будет не из файла src/lib/components а из файла src/lib/components/Button/Button
01:11:04 ПП
User 38133063
Это нужно для корректного code splitting, чтобы не тащить весь файл src/lib/components, который рекурсивно тащит за собой соответственно код всех компонентов.
01:11:19 ПП
User 38133063
User 156805060
попробуй сделать "exporter.js"$ : "exported.js" мб
Не выйдет простой заменой, потому что надо все использования заменять
01:11:21 ПП
User 156805060
ну а прям выпиливание хз. ток если иметь 2 разные версии того фалйа который импортит это все дело
01:11:31 ПП
User 97081120
а нафиг тебе компоненты, которые ты не используешь в реэкспорте?
01:11:33 ПП
User 38133063
User 156805060
ну а прям выпиливание хз. ток если иметь 2 разные версии того фалйа который импортит это все дело
Ну или плагин какой для вебпака готовый
01:11:34 ПП
User 156805060
а вообще что за профит этого прокси экспорта))
01:11:42 ПП
User 97081120
нафиг вообще реэкспортить?
01:11:53 ПП
User 32530886
User 97081120
нафиг вообще реэкспортить?
чтобы жить легче было
01:11:54 ПП
User 97081120
чтобы твой код потом хуй поддержать было?
01:12:01 ПП
User 32530886
User 97081120
чтобы твой код потом хуй поддержать было?
лол
01:12:11 ПП
User 38133063
User 97081120
нафиг вообще реэкспортить?
Чтобы писать import {Button} from "src/components" вместо import {Button} from "src/components/Button"
01:12:18 ПП
User 38133063
Когда надо много компонентов то импорт один, а не куча
01:12:20 ПП
User 97081120
угу, когда ты экпортишь все из огромного реэкпортного файла и потом ишешь, откуда же оно сюда пробросилось-то
01:12:31 ПП
User 32530886
User 97081120
угу, когда ты экпортишь все из огромного реэкпортного файла и потом ишешь, откуда же оно сюда пробросилось-то
ват?
01:12:48 ПП
User 32530886
User 97081120
угу, когда ты экпортишь все из огромного реэкпортного файла и потом ишешь, откуда же оно сюда пробросилось-то
export * from 'name' ???
это вообще законно?
01:12:55 ПП
User 97081120
нет, я не о том
01:13:09 ПП
User 97081120
я о том, что у тебя путь от использования до откуда взял удлинняется
01:13:12 ПП
User 97081120
неясно нахуя
01:13:13 ПП
User 38133063
User 97081120
угу, когда ты экпортишь все из огромного реэкпортного файла и потом ишешь, откуда же оно сюда пробросилось-то
Чувак, успокойся. Оно уже всё работает, и работает шикарно, тайпскрипт всё проверяет, и я даже уже решил свою проблему с помощью кастомного бабель плагина который я подключаю в проде. Я просто ищу стандартное решение, если оно есть
01:13:35 ПП
User 97081120
и когда что-то идет не так, удлиненный путь = более длинный поиск откуда ноги растут
01:13:45 ПП
User 97081120
а когда еще и не ты в своем коде ищешь, а кто-то другой, то тем более
01:13:57 ПП
User 38133063
User 97081120
и когда что-то идет не так, удлиненный путь = более длинный поиск откуда ноги растут
пока у тебя чистый js, да. С ts таких проблем в принципе нет
01:14:19 ПП
User 32530886
User 97081120
я о том, что у тебя путь от использования до откуда взял удлинняется
да и похер)))
у меня есть модуль, внутри модуля может быть любая структура, но API модуля имеет определенные экспорты
я могу рефакторить модуль как угодно, если не сломаю его API, больше ничего не сломается
хоть перефигачу каждую функцию в отдельный файл, хоть всё в одном
01:14:34 ПП
User 32530886
User 97081120
а когда еще и не ты в своем коде ищешь, а кто-то другой, то тем более
лол
cmd+click / f12
01:14:55 ПП
User 97081120
> cmd
ой все
01:15:09 ПП
User 32530886
ctrl+click
01:15:18 ПП
User 38133063
User 32530886
да и похер)))
у меня есть модуль, внутри модуля может быть любая структура, но API модуля имеет определенные экспорты
я могу рефакторить модуль как угодно, если не сломаю его API, больше ничего не сломается
хоть перефигачу каждую функцию в отдельный файл, хоть всё в одном
всё так
01:15:18 ПП
User 97081120
я уже слился как телочка
01:15:54 ПП
User 204484928
User 97081120
я уже слился как телочка
:3