为checkout添加切换状态时添加回调函数

This commit is contained in:
浔阳陌客 2024-04-05 16:37:25 +08:00
parent ec00075b4e
commit c58c836b7c
5 changed files with 11 additions and 1 deletions

1
.gitignore vendored
View file

@ -2,6 +2,7 @@
.vscode .vscode
.DS_Store .DS_Store
pnpm-lock.yaml pnpm-lock.yaml
package-lock.json
package.zip package.zip
node_modules node_modules
dev dev

View file

@ -191,6 +191,11 @@ export default class PluginSample extends Plugin {
type: "checkbox", type: "checkbox",
title: "Checkbox text", title: "Checkbox text",
description: "Check description", description: "Check description",
checkbox: {
callback: () => {
console.log("Checkbox clicked");
}
}
}); });
this.settingUtils.addItem({ this.settingUtils.addItem({
key: "Select", key: "Select",

3
src/libs/index.d.ts vendored
View file

@ -12,6 +12,9 @@ interface ISettingItem {
step: number; step: number;
}; };
options?: { [key: string | number]: string }; options?: { [key: string | number]: string };
checkbox?: {
callback: () => void;
}
button?: { button?: {
label: string; label: string;
callback: () => void; callback: () => void;

View file

@ -104,6 +104,7 @@ export class SettingUtils {
element.checked = item.value; element.checked = item.value;
element.className = "b3-switch fn__flex-center"; element.className = "b3-switch fn__flex-center";
itemElement = element; itemElement = element;
element.onchange = item.checkbox?.callback ?? (() => { });
break; break;
case 'select': case 'select':
let selectElement: HTMLSelectElement = document.createElement('select'); let selectElement: HTMLSelectElement = document.createElement('select');