首页 > 解决方案 > 如何更新秋田州“ui”属性

问题描述

我有一个秋田状态界面设置了相关的商店,如下图...

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”属性/我该怎么做?

秋田文档将其显示为格式...

在此处输入图像描述

...但这似乎会破坏“ui”级别的所有其他属性

标签: angular-akitaakita

解决方案


如果我正确理解了这个问题 -

在服务文件中,调用 store 的 update 方法,然后使用扩展运算符对其进行更新。例如,

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

推荐阅读