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

Привет всем. Советовали как-то константы ввести во vuex, но не

понимаю их бонус по сравнению с мапами...

Например:
С константой запись: this.$store.getters['things/' + Types.getters.GET_FIRST_THING]
С мапом: this['things/GET_FIRST_THING'] или еще короче this.GET_FIRST_THING (если объявить как объект в mapGetter и назначить ключ для геттера)

Опять же, геттер надо будет в компьютед писать тогда и придумывать название переменной, которая будет его return делать, чтобы использовать в компоненте (если не через mapGetter)

В чем преимущество констант на самом деле?

12 ответов

11 просмотров

Они не альтернатива мапам. Они альтернатива простым строчкам. Профит в том, что используются константы, а не сырые строки. Константа - конкретная сущность, а строчка - просто последовательность букв. В строчке можно опечататься, её сложнее переименовать или найти её использование в приложении.

никто не отменял опечатки и дебага час где ошибка

Aleksey-German Автор вопроса
Grigorii K. Shartsev
Они не альтернатива мапам. Они альтернатива просты...

Если я верно понял, то по сути это одно и то же получается - в консоль ошибку выводит, если через мапы не находит экшн, например, а через константу ошибку, что не нашел такой константы. И по факту разницы нет выходит, только константами запись длиньше? И так и так - кому как удобней?

Aleksey German
Если я верно понял, то по сути это одно и то же по...

Ошибка с константой будет получена на этапе написания кода, а со строчкой - выполнения

Aleksey-German Автор вопроса
Grigorii K. Shartsev
Ошибка с константой будет получена на этапе написа...

Об этом не подумал... Блин, так не хочется громоздить конструкцию такую длинную как у констант:) Используются они в коде после объявления также: в логике this.CONST_FROM_STORE, а в шаблоне просто CONST_FROM_STORE?

Aleksey German
Об этом не подумал... Блин, так не хочется громозд...

Во-первых, есть все также мапы. Во-вторых, если используете константу для обращения к полю объекта, то нужно использовать выражение [], а не точку

Aleksey German
Об этом не подумал... Блин, так не хочется громозд...

import { FETCH_DATA } from 'store/actions' export default { methods: { ...mapActions({ fetchData: FETCH_DATA, }) }, created() { this.fetchData() } }

Aleksey-German Автор вопроса
Aleksey German
Спасибо. Буду пробовать завтра значит:)

В маленьком приложении, особенно если вы один, от констант, наверное, будет больше сложностей, чем профита. Шторм отлично подсказывает и со строчками. Так что разве что для своего удовлетворения от кода)

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

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

а через ESC-код ?
Alexey Kulakov
29
30500 за редактор? )
Владимир
47
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
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
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
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
Ребят в СИ можно реализовать ООП?
Николай
33
у вас два процесса. один посылает другому сигнал. у вас есть код обоих процессов? если всё не так - расскажите как оно на самом деле. а именно кто кому чего, есть-ли консоли,...
Karagy
6
вы делали что-то подобное и как? может есть либы готовые? увидел картинку нокода, где всё линиями соединено и стало интересно попробовать то же в ddl на lua сделать. решил с ч...
Victor
8
Карта сайта