Как обновить свойство Akita state 'ui' - PullRequest
0 голосов
/ 13 июля 2020

У меня есть интерфейс состояния Акиты, настроенный со связанным хранилищем, как показано ниже ...

export interface GdTaskState extends EntityState<GdTask, number> {
  dataPage: {
    tasksLoaded: boolean;
    pageNumber: number;
    pageSize: number;
    totalTasks: number;
  };
  ui: {
    view: TaskView;
    folderFilter: FolderFilter;
    filter: TaskFilter;
    tableRows: number;
    heightSet: boolean;
    tableHeight: number;
    tableWidth: number;
  };
}

Я пытаюсь настроить метод хранилища для обновления только свойства 'tableHeight' без влияет на любые из существующих свойств «UI» / Как это сделать?

В документах Akita это показано как формат ...

введите описание изображения здесь

... но это, похоже, блокирует все остальные свойства на уровне 'ui'

1 Ответ

0 голосов
/ 14 июля 2020

Если я правильно понял вопрос -

В служебном файле вызовите метод обновления магазина, а затем обновите его с помощью оператора распространения. Например,

changeTableHeight(value) {
   this.todosStore.update((todoState) => ({
        ui: {..todoState.ui.tableHeight, value }
    }));
}
...