feat: 新增 switch 组件 onswitch-value 与 unswitch-value 属性
This commit is contained in:
@@ -32,7 +32,6 @@ const props = withDefaults(defineProps<LayMenuProps>(), {
|
||||
collapseTransition: true,
|
||||
});
|
||||
|
||||
|
||||
const isTree = computed(() => props.tree);
|
||||
const isCollapse = computed(() => props.collapse);
|
||||
const isCollapseTransition = computed(() => props.collapseTransition);
|
||||
@@ -67,7 +66,8 @@ watch(
|
||||
// 赋值所有打开
|
||||
emit("update:openKeys", oldOpenKeys.value);
|
||||
}
|
||||
}, { immediate: true }
|
||||
},
|
||||
{ immediate: true }
|
||||
);
|
||||
|
||||
provide("isTree", isTree);
|
||||
|
||||
@@ -29,7 +29,9 @@ const isTree: Ref<boolean> = inject("isTree") as Ref<boolean>;
|
||||
const selectedKey: Ref<string> = inject("selectedKey") as Ref<string>;
|
||||
const openKeys: Ref<string[]> = inject("openKeys") as Ref<string[]>;
|
||||
const isCollapse: Ref<boolean> = inject("isCollapse") as Ref<boolean>;
|
||||
const isCollapseTransition: Ref<boolean> = inject("isCollapseTransition") as Ref<boolean>;
|
||||
const isCollapseTransition: Ref<boolean> = inject(
|
||||
"isCollapseTransition"
|
||||
) as Ref<boolean>;
|
||||
|
||||
const isOpen = computed(() => {
|
||||
return openKeys.value.includes(props.id);
|
||||
|
||||
@@ -10,26 +10,35 @@ import "./index.less";
|
||||
|
||||
export interface LaySwitchProps {
|
||||
disabled?: boolean;
|
||||
modelValue?: boolean;
|
||||
modelValue?: string | number | boolean;
|
||||
onswitchText?: string;
|
||||
unswitchText?: string;
|
||||
onswitchColor?: string;
|
||||
unswitchColor?: string;
|
||||
onswitchValue?: string | number | boolean;
|
||||
unswitchValue?: string | number | boolean;
|
||||
}
|
||||
|
||||
const props = withDefaults(defineProps<LaySwitchProps>(), {
|
||||
disabled: false,
|
||||
onswitchValue: true,
|
||||
unswitchValue: false,
|
||||
});
|
||||
|
||||
const emit = defineEmits(["update:modelValue", "change"]);
|
||||
|
||||
const isActive = computed({
|
||||
get() {
|
||||
return props.modelValue;
|
||||
return props.modelValue === props.onswitchValue;
|
||||
},
|
||||
set(val) {
|
||||
emit("change", val);
|
||||
emit("update:modelValue", val);
|
||||
if(val) {
|
||||
emit("change", props.onswitchValue);
|
||||
emit("update:modelValue", props.onswitchValue);
|
||||
} else {
|
||||
emit("change", props.unswitchValue);
|
||||
emit("update:modelValue", props.unswitchValue);
|
||||
}
|
||||
},
|
||||
});
|
||||
|
||||
|
||||
Reference in New Issue
Block a user