# 檢視

- Human documentation: [https://docs.univer.ai/zh-TW/guides/bases/model/views](https://docs.univer.ai/zh-TW/guides/bases/model/views)

- Agent Markdown: [https://docs.univer.ai/zh-TW/guides/bases/model/views.md](https://docs.univer.ai/zh-TW/guides/bases/model/views.md)

- Requested language: `zh-TW`

- Content language: `zh-TW`

- Documentation version: `1.2.0`

- Source: [bases/model/views.zh-TW.mdx](https://github.com/dream-num/documentation/blob/dev/content/guides/bases/model/views.zh-TW.mdx)

---

檢視用來描述資料表呈現給使用者的方式。檢視可以隱藏欄位或調整欄位順序、篩選記錄、排序記錄、將記錄分組，並為網格、看板、日曆、甘特圖或圖庫的呈現方式定義各類型專用的設定。

## 檢視快照

| 屬性             | 類型                                    | 說明                                                         |          |
| -------------- | ------------------------------------- | ---------------------------------------------------------- | -------- |
| id             | `string`                              | 檢視 ID。                                                     |          |
| tableId        | `string`                              | 所屬資料表的 ID。                                                 |          |
| name           | `string`                              | 檢視名稱。                                                      |          |
| type           | `BaseViewType`                        | `grid`, `kanban`, `calendar`, `gantt`, `gallery`, `pivot`. |          |
| fieldOrder?    | `string[]`                            | 此檢視中的欄位順序。                                                 |          |
| fieldSettings? | `Record\<string, IViewFieldSetting\>` | 各欄位的可見性、寬度與卡片設定。                                           |          |
| filter?        | \`IFilterConfig                       | null\`                                                     | 檢視的篩選設定。 |
| sort?          | `ISortConfig[]`                       | 排序規則。                                                      |          |
| group?         | `IGroupConfig[]`                      | 分組規則。                                                      |          |
| config         | `ViewSpecificConfig`                  | 此檢視類型專用的設定。                                                |          |

## 檢視類型

| 類型         | 使用情境                    |
| ---------- | ----------------------- |
| `grid`     | 以類似試算表的方式編輯資料表。         |
| `kanban`   | 依選項、人員、群組、文字或日期欄位將卡片分組。 |
| `calendar` | 依日期欄位安排記錄的位置。           |
| `gantt`    | 使用開始與結束日期欄位規劃時間軸。       |
| `gallery`  | 以卡片版面呈現著重視覺或包含大量內容的記錄。  |
| `pivot`    | 由儀表板套件提供，用於彙總與圖表。       |

## 建立檢視

```ts
const view = table.createView('Kanban', univerAPI.Enum.BaseViewType.Kanban)
```

## 設定篩選與排序

```ts
view.setFilter({
  conjunction: univerAPI.Enum.BaseFilterConjunction.AND,
  conditions: [
    {
      fieldId: 'status',
      operator: univerAPI.Enum.BaseFilterOperator.IS,
      operand: 'In progress',
    },
  ],
})

view.setSort([
  { fieldId: 'dueDate', direction: univerAPI.Enum.BaseSortDirection.ASC },
])
```

## 欄位可見性與寬度

```ts
view.setFieldVisible('internalNotes', false)
view.setFieldWidth('title', 280)
```

[儀表板與樞紐分析檢視](https://docs.univer.ai/zh-TW/guides/bases/features/dashboard.md)
