В Pinia Composition API нет метода $reset — как бы вы его реализовали?

В Pinia Composition API можно реализовать метод $reset, который сбрасывает состояние стора к его начальному значению, сохранив изначальный стейт при создании стора. Например:

Короткий ответ

Что ответить на собеседовании

В Pinia Composition API можно реализовать метод $reset, который сбрасывает состояние стора к его начальному значению, сохранив изначальный стейт при создании стора. Например:

Подробный разбор

Ответ с пояснениями

В Pinia Composition API можно реализовать метод $reset, который сбрасывает состояние стора к его начальному значению, сохранив изначальный стейт при создании стора. Например:

import { defineStore } from 'pinia'
import { reactive } from 'vue'

export const useMyStore = defineStore('myStore', () => {
  const initialState = {
    count: 0,
    items: []
  }

  const state = reactive({ ...initialState })

  function reset() {
    Object.assign(state, initialState)
  }

  return { state, reset }
})

Здесь initialState сохраняет исходные значения, а функция reset восстанавливает их в реактивном состоянии стора.

Практика в реальном времени

Подготовьтесь к следующему собеседованию

Interview Boost учитывает вакансию, резюме и технологии и помогает сформулировать ответ прямо во время интервью.

Начать подготовку