but it has no setter.
Модуль стора:
export default {
state: {
IsSuccess: false,
IsErr: false,
Text: ''
},
getters: {
IS_SUCCESS: state => state.IsSuccess,
IS_ERR: state => state.IsErr,
TEXT: state => state.Text
},
mutations: {
SHOW_ERROR: (state, text) => {
state.Text = text;
state.IsErr = true;
},
HIDE_ERROR: (state) => {
state.IsErr = false;
},
SHOW_SUCCESS: (state, text) => {
state.Text = text;
state.IsSuccess = true;
},
HIDE_SUCCESS: (state) => {
state.IsSuccess = false;
}
}
}
Ну и сам компонент:
...
<v-snackbar
v-model="IS_SUCCESS"
color="success"
top
right
>
{{ TEXT }}
<template v-slot:action="{ attrs }">
<v-btn
icon
v-bind="attrs"
@click="HIDE_SUCCESS"
>
<v-icon>fal fa-window-close</v-icon>
</v-btn>
</template>
</v-snackbar>
...
export default {
computed: mapGetters(['IS_ERR', 'IS_SUCCESS', 'TEXT']),
methods: {
...mapMutations(['SHOW_ERROR', 'HIDE_ERROR', 'SHOW_SUCCESS', 'HIDE_SUCCESS']),
}
}
Ошибка возникает только при закрытии snackbar'а по таймауту. Как исправить?
IS_SUCCESS это геттер, из него можно только читать а вы в него еще и пишите, т.к. указали его в v-model и при закрытии v-snaсkbar пытается записать туда false
Обсуждают сегодня