diff --git a/package/component/src/component/checkbox/index.less b/package/component/src/component/checkbox/index.less index f5d3d076..896b6ec1 100644 --- a/package/component/src/component/checkbox/index.less +++ b/package/component/src/component/checkbox/index.less @@ -102,7 +102,7 @@ } .layui-form-checked[lay-skin="primary"] i { - border-color: var(--global-checked-color) !important; + border-color: var(--global-checked-color); background-color: var(--global-checked-color); color: #fff; } @@ -136,3 +136,8 @@ .layui-checkbox-disabled:hover i { color: #fff !important; } + +.layui-checkbox-disabled .layui-icon-ok,.layui-checkbox-disabled .layui-icon-subtraction{ + background-color: var(--global-neutral-color-3) !important; + border-color: var(--global-neutral-color-3) !important; +} \ No newline at end of file diff --git a/package/component/src/component/checkbox/index.vue b/package/component/src/component/checkbox/index.vue index 0076976f..13384af4 100644 --- a/package/component/src/component/checkbox/index.vue +++ b/package/component/src/component/checkbox/index.vue @@ -27,7 +27,6 @@ const props = withDefaults(defineProps(), { }); const checkboxGroup: any = inject("checkboxGroup", {}); -const checkboxGroupDisabled: boolean = inject("checkboxGroupDisabled", false); const isGroup = computed(() => { return ( @@ -93,10 +92,19 @@ const setArrayModelValue = function (checked: any) { }; const handleClick = function () { - if (!props.disabled&&!checkboxGroupDisabled) { + if (!ifDisabled.value) { isChecked.value = !isChecked.value; } }; +const ifDisabled = computed(() => { + if (props.disabled) { + return true; + } + if (checkboxGroup.hasOwnProperty('disabled')&&checkboxGroup.disabled.value) { + return true; + } + return false; +})