🔨 refactor(setting): 重构了Svelte设置的模板

- 将 SettingPanel 作为基本模板
- 更改了 settingitem 的类型定义
This commit is contained in:
frostime 2023-11-28 21:24:19 +08:00
parent f1fcf77500
commit b0d28e2513
6 changed files with 169 additions and 116 deletions

View file

@ -2,13 +2,13 @@
import { createEventDispatcher } from "svelte";
export let type: string; // Setting Type
export let title: string; // Displayint Setting Title
export let text: string; // Displaying Setting Text
export let description: string; // Displaying Setting Text
export let settingKey: string;
export let settingValue: any;
//Optional
export let placeholder: string = ""; // Use it if type is input
export let options: { [key: string]: string } = {}; // Use it if type is select
export let options: { [key: string | number]: string } = {}; // Use it if type is select
export let slider: {
min: number;
max: number;
@ -30,7 +30,7 @@
<div class="fn__flex-1">
{title}
<div class="b3-label__text">
{text}
{@html description}
</div>
</div>
<span class="fn__space" />
@ -53,6 +53,14 @@
bind:value={settingValue}
on:change={changed}
/>
{:else if type === "number"}
<input
class="b3-text-field fn__flex-center fn__size200"
id={settingKey}
type="number"
bind:value={settingValue}
on:change={changed}
/>
{:else if type === "button"}
<!-- Button Input -->
<button