BonBonSlick
@BonBonSlick
Vanilla Web Architect

VuexModule class private field?

export default class LayoutDefault extends Vue {
    @user.State
    public name!: string // test
    @user.Getter
    public nameUpperCase!: string // test

для такого модуля, хотя поле приватное что бы исключить прямой доступ через State
@Module({namespaced: true})
export default class User extends VuexModule {
    private name: string = 'test';

    public get nameUpperCase(): string {
        return this.name


Оба варианта доступны в шаблоне, можно лизаприватизировать напрямую state?
  • Вопрос задан
  • 39 просмотров
Решения вопроса 1
Robur
@Robur
Знаю больше чем это необходимо
private вам гарантирует только то что вы не можете напрямую в коде его использовать. Что там нагорожено через декораторы и рефлекшен - это уже не контролируется.
В шаблоне - тем более.

Возможно когда настоящие приветные свойства класса из es2020 подъедут, то будет то что вы хотите. Но к тому времени уже будет vue 3 где от классов отказались.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
04 июл. 2020, в 18:19
3500 руб./за проект
04 июл. 2020, в 17:51
20000 руб./за проект
04 июл. 2020, в 17:25
2000 руб./за проект