refactor: remove unused dashboard components and views

This commit is contained in:
skytek_xinliang
2026-03-30 10:08:24 +08:00
parent 8ef6873abc
commit 742d5cafcd
33 changed files with 257 additions and 3207 deletions
+11 -41
View File
@@ -61,11 +61,6 @@
目前已接近薄 view 的頁面:
- [Dashboard.vue](/home/carl/git/skt-vuetify-templates/src/views/Dashboard.vue)
- [Analysis.vue](/home/carl/git/skt-vuetify-templates/src/views/Analysis.vue)
- [RoleManagement.vue](/home/carl/git/skt-vuetify-templates/src/views/RoleManagement.vue)
- [MenuManagement.vue](/home/carl/git/skt-vuetify-templates/src/views/MenuManagement.vue)
- [DeptManagement.vue](/home/carl/git/skt-vuetify-templates/src/views/DeptManagement.vue)
- [EditableGridMnt.vue](/home/carl/git/skt-vuetify-templates/src/views/maint/EditableGridMnt.vue)
- [Forbidden.vue](/home/carl/git/skt-vuetify-templates/src/views/errors/Forbidden.vue)
- [ServerError.vue](/home/carl/git/skt-vuetify-templates/src/views/errors/ServerError.vue)
@@ -92,18 +87,14 @@
### `src/components`
目前 `components` 已經分成四種角色,不能再用單一規則描述。
目前 `components` 已經分成三種主要角色,不能再用單一規則描述。
#### 1. 頁面型元件
目前以下元件實際上扮演「page component」:
- [PageLogin.vue](/home/carl/git/skt-vuetify-templates/src/components/PageLogin.vue)
- [SKDashboard.vue](/home/carl/git/skt-vuetify-templates/src/components/SKDashboard.vue)
- [SKAnalysis.vue](/home/carl/git/skt-vuetify-templates/src/components/SKAnalysis.vue)
- [SKRoleManagement.vue](/home/carl/git/skt-vuetify-templates/src/components/SKRoleManagement.vue)
- [SKMenuManagement.vue](/home/carl/git/skt-vuetify-templates/src/components/SKMenuManagement.vue)
- [SKDeptManagement.vue](/home/carl/git/skt-vuetify-templates/src/components/SKDeptManagement.vue)
- [PageIndex.vue](/home/carl/git/skt-vuetify-templates/src/components/PageIndex.vue)
這些檔案目前的實際責任是:
@@ -117,18 +108,8 @@
文件原先寫法是「`base` 只放真正通用元件」,但目前專案並不完全符合。
現在 `components/base`同時存在兩類東西
- 跨頁可重用元件:
- [SKFormEditDialog.vue](/home/carl/git/skt-vuetify-templates/src/components/base/SKFormEditDialog.vue)
- [SKSearchFilter.vue](/home/carl/git/skt-vuetify-templates/src/components/base/SKSearchFilter.vue)
- [SKTableActionBar.vue](/home/carl/git/skt-vuetify-templates/src/components/base/SKTableActionBar.vue)
- [SKTreeTable.vue](/home/carl/git/skt-vuetify-templates/src/components/base/SKTreeTable.vue)
- 頁面家族的內部子元件:
- `base/login/*`
- `base/dashboard/*`
- `base/analysis/*`
- `base/input_field/*`
現在 `components/base`主要保留頁面家族的內部子元件
- `base/login/*`
因此目前對 `base` 的正確認知應該是:
@@ -138,7 +119,6 @@
目前建議:
- 真正跨頁重用的元件,才放在 `components/base` 根層
- 若元件只服務單一頁面家族,優先放到對應資料夾或 feature/domain 資料夾
#### 3. `components/layouts`
@@ -164,7 +144,7 @@ layout 不應承擔:
- 頁面專屬業務流程
- 特定 domain 的資料規則
#### 4. `components/maintenance`
#### 3. `components/maintenance`
這個目錄目前已經是最接近 feature folder 的區域:
@@ -264,11 +244,7 @@ layout 不應承擔:
已落地頁面:
- `Login`
- `Dashboard`
- `Analysis`
- `RoleManagement`
- `MenuManagement`
- `DeptManagement`
- `Home`
代表目前專案已經存在一種穩定模式:
@@ -276,7 +252,7 @@ layout 不應承擔:
- page component 負責頁面畫面組裝
- 較細的視覺區塊再拆到內部子元件
這是目前除 maintenance 外最明確的頁面分層。
這是目前在一般展示頁面中最明確的頁面分層。
### 模式 2`view -> maintenance components + maintenance composables`
@@ -319,33 +295,27 @@ layout 不應承擔:
- [MasterDetailMntC.vue](/home/carl/git/skt-vuetify-templates/src/views/maint/MasterDetailMntC.vue)
- 重新整理:
- [Login.vue](/home/carl/git/skt-vuetify-templates/src/views/Login.vue)
- [Home.vue](/home/carl/git/skt-vuetify-templates/src/views/Home.vue)
原因:
- 這些頁面仍保留大量模板、資料轉換或頁面內對話框協調邏輯
- 這些頁面仍保留大量資料轉換或頁面內對話框協調邏輯
### 中優先度
- 重新命名或重新安置頁面型元件:
- [PageLogin.vue](/home/carl/git/skt-vuetify-templates/src/components/PageLogin.vue)
- [SKDashboard.vue](/home/carl/git/skt-vuetify-templates/src/components/SKDashboard.vue)
- [SKAnalysis.vue](/home/carl/git/skt-vuetify-templates/src/components/SKAnalysis.vue)
- [SKRoleManagement.vue](/home/carl/git/skt-vuetify-templates/src/components/SKRoleManagement.vue)
- [SKMenuManagement.vue](/home/carl/git/skt-vuetify-templates/src/components/SKMenuManagement.vue)
- [SKDeptManagement.vue](/home/carl/git/skt-vuetify-templates/src/components/SKDeptManagement.vue)
- [PageIndex.vue](/home/carl/git/skt-vuetify-templates/src/components/PageIndex.vue)
原因:
- 它們語意上已是頁面型元件,但放在 `components` 根目錄
- 目前仍可接受,但新功能不應沿用這種命名與放置方式擴散
- 它們是頁面型元件,但目前放在 `components` 根目錄
- 若後續繼續保留 page component 分層,建議改成更清楚的命名與歸位方式
### 中低優先度
- 清理 `src/stores/stores/*` 重複結構
- 檢查 `components/base/*` 是否要把頁面家族子元件搬到更明確的資料夾
- 檢查空資料夾 `src/components/base/management` 是否仍需要保留
- 重新評估 [SKSearchFilter.vue](/home/carl/git/skt-vuetify-templates/src/components/base/SKSearchFilter.vue)、[SKFormEditDialog.vue](/home/carl/git/skt-vuetify-templates/src/components/base/SKFormEditDialog.vue)、[SKTreeTable.vue](/home/carl/git/skt-vuetify-templates/src/components/base/SKTreeTable.vue) 是否仍保持跨頁通用
## 新增或修改檔案時的判斷準則