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

Ребят, подскажите, пожалуйста. Не могу понять момент. В проекте vue3 и pinia. В

сторе дефолтное значение у свойства {}.
Когда пытаюсь ресетить стор, то через this.$patch прокидываю этому свойству значение, как дефолтное, {}. Там же ещё несколько свойств обновляю.
При этом, объект не перезаписывается, а примитивы да.

Если же перезаписать свойство так: this.someProp = {}, то всё хорошо.

Это особенность $patch такая или я что-то упускаю?

16 ответов

24 просмотра

покажите как вы юзаете $patch что оно не обновляет

Там же вроде есть $reset()

Dmytro-Medychenko Автор вопроса
¿Сергей?
покажите как вы юзаете $patch что оно не обновляет

Не за компом сейчас. Но юзаю так: this.$patch({ someProp: {}, anotherProp: false })

Dmytro-Medychenko Автор вопроса
Maxim Bezrukov
Там же вроде есть $reset()

Да, но мне не нужно весь стор ресетить, только некоторые свойства(

Dmytro Medychenko
Да, но мне не нужно весь стор ресетить, только нек...

Почему вы вообще патч используете а не экшены

Dmytro-Medychenko Автор вопроса
Maxim Bezrukov
Почему вы вообще патч используете а не экшены

В экшене выполняю логику, после которой нужно очистить часть стора. Чтобы сгруппировать работу со стором юзаю $patch.

Dmytro Medychenko
В экшене выполняю логику, после которой нужно очис...

И что, это разве мешает использовать экшены?

Dmytro-Medychenko Автор вопроса
Maxim Bezrukov
И что, это разве мешает использовать экшены?

Есть экшен, в котором обрабатываются данные. После успешной обработки данных нужно ресетить часть стора. Всё в одном экшене.

Dmytro Medychenko
Есть экшен, в котором обрабатываются данные. После...

Ну так в чем проблема вызывать внутри этого экшена, экшен с рестором

Dmytro Medychenko
Не за компом сейчас. Но юзаю так: this.$patch({ so...

this.$patch({ someProp: {}, anotherProp: false }) => this.$patch(state => { state.someProp = {} state.anotherProp = false })

Dmytro-Medychenko Автор вопроса
Maxim Bezrukov
Ну так в чем проблема вызывать внутри этого экшена...

Так и происходит. Отдельный экшен для ресета выделен, который юзаю о необходимости в других экшенах.

Dmytro-Medychenko Автор вопроса
¿Сергей?
this.$patch({ someProp: {}, anotherProp: false }) ...

Попробую завтра Ваш вариант, спасибо большое. Просто странно, почему мой вариант под примитивы подходит, а с объектом не прокатило(

Dmytro Medychenko
Попробую завтра Ваш вариант, спасибо большое. Про...

тоже не понимаю, в доке такой кейс не описан, в issues на гитхабе не нашел

Dmytro-Medychenko Автор вопроса
¿Сергей?
тоже не понимаю, в доке такой кейс не описан, в is...

Вот и я искал, не нашел... Решил в комьюнити обратиться, потому что тут часто ребята полезные вещи объясняют. Сам несколько месяцев как на Вью пересел просто)

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

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

У меня это всегда вопрос вызывало.. Нафига писать код так, чтобы потом ошибки вылавливать?
Nik
44
что за асемблер кста?
Shvabrikk Nya
19
Добрый день! Пробую отловить исключение EConvertError: function _TryTextToDouble(var DoubleVar: Extended; Text: String): Boolean; begin try DoubleVar := StrToFloat...
Kirill Filippenok
19
А где @Grinyaha уважаемый пропал?
Am Ambrion
14
Сделал краткий обзор магазина из статьи и заодно там же записал инструкцию по развёртыванию. https://www.youtube.com/watch?v=8-sE1vNk95Q (чё думаете по звуку? кое-что поменял...
Andrey K
17
Добрый вечер. Есть вопрос, а может и предложение. Был у меня диалог в другой группе о делфи и я задался вопросом: "А нельзя ли в делфи цвет //коментария и {комментария} сде...
Kraszx
24
Привет, коллеги! Возникла задача ограничить максимальный размер вложений для определённых расширений, например, чтобы для изображений лимит был 10 МБ, а для видео — 100 МБ. Ог...
Andro
1
вот не понимаю, зачем вообще лезть в осдев, если даже базы не знаешь? хотя бы про загрузку, форматы файлов железо какое-никакое. Ну реально, даже зная работу железа, с условны...
Mixail Frolov
7
Можно ли ставить FPC транк, а Лазарь нет?
А Андрей
9
Мужики и девушки, привет) в Вelphi xe7 в настройках во вкладке "Editor Options" далее " Color" есть список: "Elements", открыв который мы можем настраивать отображение разных...
Kraszx
14
Карта сайта