Параметр key
должен был иметь имя path
.Это не относится к имени ключа, используемого в localStorage.Несмотря на то, что @@STATE
также создает ключ в localStorage с тем же именем.
Опция key
представляет собой одну или несколько точечных нотаций в хранилище состояний.Например:
interface MyModel { example: string }
@State<MyModel>({
name: 'app',
defaults: { example: "Hello World" }
) //...
Если ключ установлен на @@STATE
, то хранилище сохранит
"@@STATE" : "{app: {example: 'Hello World'}}"
При изменении ключа он должен указывать на объект состояния, в противном случае ондаст undefined
.Таким образом, мы можем установить key
в "example"
, что будет хранить "Hello World"
в localStorage под ключом с именем "example".
Как это
"example": "Hello World"
На данный момент значение@@STATE
жестко запрограммирован в плагине и не может быть переименован.Это имеет особое значение для сериализации всего магазина.В противном случае ключ должен быть точечным путем к объекту состояния.