跳至主要内容

使用方式

控制項是幫助我們構建工具列的 UI 元件。

這些控制項讓最終用戶可以輸入數據,這些數據隨後會被存儲。存儲的數據可用於生成 CSS 或在基於用戶選擇的元件中進一步使用。

添加控制項

要添加 Brizy 控制項,定義控制項並將其添加到返回工具列項目的函數中。以下是示例:

const getToolbarItems = () => {
return [
{
id: "settings",
type: "popover",
config: { icon: "nc-cog", title: "設置" },
options: [
{
id: "width",
label: "寬度",
type: "slider",
config: {
min: 0,
max: 100,
units: [{ value: "px", title: "px" }],
},
},
],
},
];
};

我們之前添加了 popoverslider 控制項,以允許用戶設置組件的寬度。
您可以在 這裡 了解更多信息。

數據儲存

控制項的值將儲存在以 id 屬性值命名的鍵中。然而,對於平板電腦和手機設備,這個鍵會添加前綴。以下是示例:

{
id: "loop",
type: "switch"
}

當用戶更改開關狀態時:

  • 桌面值將儲存在 "loop" 鍵中
  • 平板電腦值將儲存在 "tabletLoop" 鍵中
  • 手機值將儲存在 "mobileLoop" 鍵中

在代碼中如何顯示:

桌面:

{
loop: "on";
}

平板電腦:

{
tabletLoop: "on";
}

手機:

{
mobileLoop: "off";
}

控制項的返回值的鍵也會以控制項的 id 作為前綴。
例如,我們有以下控制項:

{
id: "margin",
type: "margin"
}

它的默認返回值是:

{
type: "grouped" | "ungrouped",
value: number,
suffix: "px" | "%",
top: number,
topSuffix: "px" | "%",
right: number,
rightSuffix: "px" | "%",
bottom: number,
bottomSuffix: "px" | "%",
left: number,
leftSuffix: "px" | "%"
}

在我們的示例中,由於 id: "margin",鍵將以 "margin" 作為前綴。
只有 value 鍵將被替換為控制項的 id,在我們的例子中是 "margin"

{
marginType: "grouped",
margin: 0,
marginSuffix: "px",
marginTop: 0,
marginTopSuffix: "px",
marginRight: 0,
marginRightSuffix: "px",
marginBottom: 0,
marginBottomSuffix: "px",
marginLeft: 0,
marginLeftSuffix: "px"
}