Nikita
ага, 10x
и что с этим примером не так?
Roman
10x – это "спасибо" =)
Nikita
типо
Nikita
tenx
Nikita
thx?
Roman
да, как и 10q
Stanislav
😄 ха
Nikita
а я то думал, ты смеешься над моим примером
Nikita
оскробляешь меня и принижаешь
Stanislav
Я читал как 10 икс
Andriy ✙
thx?
Так пишут англоязычные, Так что так правильней
Nikita
я думал меня оскорбили
Nikita
и я уже человека хейтить начал
Nikita
а он меня благодарит
Nikita
мы же русские люди, давайте писать спс
Nikita
и не надо писать МГУ вместо Vue
Andriy ✙
+
Роман
плачу))
Stanislav
А если ещё и 2000 г.р., то "ставь лойс"
Nikita
я вообще 10х прочитал как
Nikita
Ага, 10 раз
Nikita
а 10 раз типо, ага конечно 10 раз ща напишу
Stanislav
разве лойсы были в 2к?
2000 года рождения
Nikita
а
Stanislav
Хотя, это 17 лет
Phil
скок кому лет
Nikita
23
Stanislav
Мне 15
Stanislav
Будет
Nikita
врешь?
Stanislav
Честно вру
Nikita
фух
Nikita
судя по аватарке
Nikita
тебе 22-24?
Stanislav
25 стало 13 сентября
Nikita
почти
Stanislav
судя по аватарке
А что с аватаркой?
Nikita
пытался гадать по аватарке, как по чаю
Stanislav
Аа
Stanislav
Такой сейчас не найти
Stanislav
Она была до 30 хрома
Roman
https://webpack.js.org/plugins/context-replacement-plugin/#src/components/Sidebar/Sidebar.jsx
это всё хорошо, но ведь эти переменные только на сервере доступны. А как на основе них задать разные в клиентском js? Нужны разные адреса бекендов
Nikita
ну
Roman
ну и прод не на ноде будет, так что для него задать надо во время сборки
Nikita
я же ттебе трюк со свичем показал же
Nikita
никого прод не на ноде если что
Roman
я не понимаю в какой части приложения он будет работать, в App.vue же уже нет
Roman
никого прод не на ноде если что
ох чего я только не видел =(
Nikita
https://pastebin.com/fLuApSjN
Nikita
так тебе понятней?
Nikita
есть глобальный конфиг файл, а он сначала задает на основе env переменные, а потом они уже по всей системе используются
Nikita
если хочется, чтоб при минификации ненужное удалялось, то можно использовать фишку if (PRODUCTION) {}, if (DEVELOP) {}, самое главное, что эти значение отдавали только true или false, тогда eslint будет вырезать false ифы
Anonymous
Никакой воды, никаких цитат. Только пошаговые инструкции по белым, серым и черным схемам заработка, статьи по анонимности в сети - все это у нас на канале @obnajaya_biz
Nikita
я не захотел в доке вебпак темплейта копаться, поэтому использовал contextReplacementPlugin напрямую
Roman
глобальный лежит в config/index.js, это я вижу, в нем есть module.exports = { build: { env: require('./prod.env'), }, dev: { env: require('./dev.env'), } }
Nikita
и когда собирал нужные сборки то export BUILD_TYPE="production" && node build
Nikita
если ты хочешь использовать возможности шаблона
Nikita
то прокидывай в dev или build нужные переменные
Nikita
и вызывай их через process.env.url
Roman
я какую-то простую вещь упускаю, но понять пока не могу вот этот считч`switch (BUILD_TYPE)` будет работать во время сборки, т.е. мне, например, дев сервер надо перезапустить, верно?
Nikita
да
Nikita
вместо build_type будет вставляться переменная же
Roman
и это прямо в App.js можно писать, или таки нет?
Nikita
да
Nikita
эти переменные доступы приложению
Nikita
и будут доступы и после сборки
Nikita
вебпак вместо BUILD_TYPE вставит слово которое ты ему передал и все
Nikita
вот и вся магия
Nikita
BUILD_TYPE это моя переменная если что, я ее передал через настройки вебпака
Nikita
new webpack.DefinePlugin({ 'process.env': config.dev.env, 'BUILD_TYPE': JSON.stringify(process.env.BUILD_TYPE) }),
Nikita
https://webpack.js.org/plugins/define-plugin/
Roman
вроде понятно, пробую настроить, в вебпаке уже есть NODE_ENV
Nikita
и есть чат https://t.me/webpack_ru
Roman
всё, заработало! switch (process.env.NODE_ENV) { //eslint-disable-line no-undef case 'development': apiUrl = 'http://api.dev.com'; break; case 'production': debugMode = false; sentryConfig = myconfig; apiUrl = 'http://api.prod.com'; break; default: apiUrl = 'http://api.dev.com'; domainUrl = 'localhost'; }
Roman
не хочу никаких дополнительных плагинов-лодеров-чатов, еще бы 10 минут и я перешел бы на sed, всё равно в гошечке go generate дергать =) спасибо!
Nikita
ну я рад
Stanislav
😄
Nikita
@c01nd01r кстать, я не понял, как мне насоздавать конфигов под каждый случай?