smartFolder(智慧型資料夾)

透過 eagle.smartFolder API 可以方便的建立、查詢、修改及刪除智慧型資料夾。

triangle-exclamation
// 使用流暢建構器建立智慧型資料夾
const sf = await eagle.smartFolder.create({
    name: '大尺寸 PNG',
    conditions: [
        eagle.smartFolder.Condition.create('AND', [
            eagle.smartFolder.rule('width')['>']([1920]),
            eagle.smartFolder.rule('type').equal('png'),
        ])
    ]
});

// 修改屬性
sf.name = '超大尺寸 PNG';
sf.iconColor = 'blue';

// 儲存修改
await sf.save();
circle-check

方法

create(options)

建立智慧型資料夾

  • options Object

    • name string - 智慧型資料夾名稱

    • conditions Object[] - 篩選條件

    • description string (可選) - 描述

    • iconColor string (可選) - 圖示顏色

    • parent string (可選) - 父智慧型資料夾 ID

  • 返回 Promise<smartFolder: SmartFolder> - smartFolder 成功新增的智慧型資料夾


get(options)

取得指定條件的智慧型資料夾。

  • options Object - 查詢條件

    • id string (可選) - 智慧型資料夾 id

    • ids string[] (可選) - 智慧型資料夾 id 陣列

  • 返回 Promise<smartFolders: SmartFolder[]> - smartFolders 查詢結果


getAll()

取得所有智慧型資料夾。

  • 返回 Promise<smartFolders: SmartFolder[]> - smartFolders 查詢結果


getById(smartFolderId)

取得對應 smartFolderId 的智慧型資料夾。

  • smartFolderId string - 智慧型資料夾 id

  • 返回 Promise<smartFolder: SmartFolder> - smartFolder 查詢結果


getByIds(smartFolderIds)

取得對應 smartFolderIds 的智慧型資料夾陣列。

  • smartFolderIds string[] - 智慧型資料夾 id 陣列

  • 返回 Promise<smartFolders: SmartFolder[]> - smartFolders 查詢結果


remove(smartFolderId)

刪除指定的智慧型資料夾。

  • smartFolderId string - 智慧型資料夾 id

  • 返回 Promise<result: boolean>


getRules()

取得可用的篩選規則 schema。回傳每個 property 支援的 methods、valueType、options 等資訊。

  • 返回 Promise<rules: Object> - 規則 schema 物件

circle-info

提示:先呼叫 getRules() 取得可用的 property 和 method,再使用 rule() 建構器建構條件,可避免無效的篩選條件。


rule(property)

流暢建構器,用於建構單一篩選規則。回傳一個包含所有可用 method 的物件,呼叫 method 後會產生對應的 Rule 物件。

  • property string - 篩選屬性(如 namewidthtype

  • 返回 Object - 包含所有可用 method 的建構器物件


類:SmartFolder

由 SmartFolder API get 返回的 Object 類型,提供修改、儲存功能。

circle-check

實例方法

save()

儲存所有修改

  • 返回 Promise<smartFolder: SmartFolder> - 更新後的智慧型資料夾


getItems(options)

取得符合此智慧型資料夾篩選條件的項目。

  • options Object (可選)

    • orderBy string (可選) - 排序欄位

    • fields string[] (可選) - 要回傳的欄位

  • 返回 Promise<items: Object[]> - 符合條件的項目陣列


實例屬性

SmartFolder 實例包含以下屬性:

id string

唯讀,智慧型資料夾 id。

name string

智慧型資料夾名稱。

conditions Object[]

篩選條件陣列。

description string

智慧型資料夾描述。

icon string

唯讀,智慧型資料夾圖示。

iconColor string

智慧型資料夾圖示顏色。

modificationTime integer

唯讀,最後修改時間戳記。

children SmartFolder[]

唯讀,子智慧型資料夾陣列。

parent string

唯讀,父智慧型資料夾 ID。

imageCount integer

唯讀,符合條件的項目數量。


Helper Classes

SmartFolder.Rule

規則物件,用於描述單一篩選規則。

SmartFolder.Condition

條件群組物件,包含多條規則和邏輯運算。

Condition.create(match, rules, boolean)

  • match string - 'AND''OR'

  • rules Object[] - 規則陣列

  • boolean string (可選) - 'TRUE'(包含,預設)或 'FALSE'(排除)


靜態屬性

IconColor Object

提供預定義的圖示顏色常數,用於設定智慧型資料夾的 iconColor 屬性。

circle-check

Last updated