169 похожих чатов

Объясните пожалуйста, для чего так делать, какой смысл в этих

переменных ? Может есть статья где про это почитать можно.

43 ответов

26 просмотров

Типо для быстрого рефакторинга, ибо переменную поправить легче чем строку

https://vuex.vuejs.org/guide/mutations.html#using-constants-for-mutation-types

это "ПОЛИМОРФИЗМ" лайк

конкретно так делать особо смысла нет, если использовать константы, то надо их экспортировать, чтобы и в остальных местах использовать их

в большинстве ситуаций это просто карго-культ)

Kirill 🍅 Romanov
в большинстве ситуаций это просто карго-культ)

Это в редаксе так было принято делать для типов экшенов)

Чтобы не было магических строк в коде. Но конкретно эта реализация не до конца решает эту проблему

Мне кажется, это масштабных вещей

Хочу умереть

Rostislav 🇺🇦- Автор вопроса

Та вот и я понял, что не случится )

this.$store.commit(constants.COMMITS.SUPER_LONG_COMMIT_NAME)

Это извините меня пиздец

¿Сергей?
Это извините меня пиздец

Люди на редаксе в былые времена так и писали)

Rostislav 🇺🇦
Та вот и я понял, что не случится )

Да, не надо эту тему использовать, плохая привычка

¿Сергей?
this.$store.commit(constants.COMMITS.SUPER_LONG_CO...

Сюда ещё модули добавить, и будет хуже вонять чем общажный туалет, при чем мужской

¿Сергей?
Сюда ещё модули добавить, и будет хуже вонять чем ...

А вы можете четко сформулировать чем плох этот код?)

¿Сергей?
this.$store.commit(constants.COMMITS.SUPER_LONG_CO...

Почему бы по простому не типизировать commit?

Yurii
Почему бы по простому не типизировать commit?

Если бы js был статически типизированным - было бы проще)

Volodymyr Klimov
А вы можете четко сформулировать чем плох этот код...

Длинная строка, названия коммитов никогда практически не меняются, как и урлы эндпоинтов

¿Сергей?
Длинная строка, названия коммитов никогда практиче...

Чем плохо длинное название? А что, лучше писать строкой с риском опечататься?)

Volodymyr Klimov
Чем плохо длинное название? А что, лучше писать с...

в джаваскрипте практически везде есть риск опечататься

Kirill 🍅 Romanov
в джаваскрипте практически везде есть риск опечата...

Но с константами редактор подсказывает лучше)

Volodymyr Klimov
Чем плохо длинное название? А что, лучше писать с...

За два года ни разу не имел проблем с этим, да и смысла не вижу в этой перестраховке

Volodymyr Klimov
Но с константами редактор подсказывает лучше)

Все равно быстрее без констант, их ещё нужно создать, импортировать в модуль, объявить, импортировать в компонент и использовать Быстрее замапить одним действием и вторым использовать

¿Сергей?
Все равно быстрее без констант, их ещё нужно созда...

Мне тоже не нравятся константы, но это точно лучше, чем писать строки) Тут, в общем, зависит от того, с чем сравнивать)

Насколько я читал у Стояна Стефанова это вообще про экономию памяти. Типо в минимизированном коде меньше символов занимает, т.к. константу можно заменить одной буквой при минимизации, а строку - нет. Но возможно я просто не так понял, та и в книжке много разных страшных извращений было :)

Артем 🇺🇦 Бондаренко
Насколько я читал у Стояна Стефанова это вообще пр...

Ладно, мы это тут такие умные, мы видели код друг друга)

Illya Klymov 🇺🇦
Нетч это вообще не про это

Тогда не так понял то что там написано🤷‍♀ Но не очень понимаю как это поможет в контроле опечаток если разбить на модули. Строки конкатить?

Артем 🇺🇦 Бондаренко
Тогда не так понял то что там написано🤷‍♀ Но не оч...

У вас сборщик свалится если по неправильному имени пытаетесь импортировать

Эта штука - борьба с опечатками. В условиях нетипизированных аргументов метода commit, это пока лучшее, что придумано. Из других вариантов бороться с этим - типизированные сторы

Stanislav Lashmanov
У вас сборщик свалится если по неправильному имени...

Да, но если врублен неймспейс модуля то все равно получается что-то такое: commit('users/${constants.SET_USER}') Такое себе...

Артем 🇺🇦 Бондаренко
Да, но если врублен неймспейс модуля то все равно ...

не, тут будет так commit('${constants.USERS}${constants.SLASH_SYMBOL}${constants.SET_USER}')

1. единая точка входа, если вы хотите использовать экшн то импортируете её имя из единого файла 2. можно задать любое человеческое описание в переменной и что делает этот экшн который видно в девтулзах ps: как показывает практика это неоправданная дичь

Kirill 🍅 Romanov
в большинстве ситуаций это просто карго-культ)

В большинстве ситуаций это просто идиотизм

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

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

30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
в JclConsole объявлено так: function CtrlHandler(CtrlType: DWORD): BOOL; stdcall; - где ваше объявление с stdcall? у вас на картинке нет stdcall
Karagy
8
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
program test; {$mode delphi} procedure proc(v: int32); overload; begin end; procedure proc(v: int64); overload; begin end; var x: uint64; begin proc(x); end. Уж не знаю...
notme
6
Карта сайта