element ui奇葩自定义样式及功能需求记录
1、表单el-checkbox中添加全选
在正常的el-checkbox-group前增加全选并且不影响表单验证。

<el-form
  ref="formRef"
  :model="form"
  :rules="formRules"
  class="form-box"
  status-icon
  label-width="112px"
  label-position="left"
>
  <div class="pos-r">
    <el-checkbox
      style="position: absolute; left: 112px; z-index: 1"
      v-model="state.checkAll"
      :indeterminate="state.isIndeterminate"
      @change="handleCheckAllChange"
    >
      全选
    </el-checkbox>
  </div>
  <el-form-item prop="type" label="类目">
    <el-checkbox-group
      class="type-list"
      v-model="form.type"
      @change="handleCheckedChange"
    >
      <el-checkbox :label="0">item1</el-checkbox>
      <el-checkbox :label="1">item2</el-checkbox>
      <el-checkbox :label="2">item3</el-checkbox>
    </el-checkbox-group>
  </el-form-item>
</el-form>
const state = reactive({
  checkAll: false,
  isIndeterminate: false,
});
const handleCheckAllChange = (val) => {
  form.type = val ? [0, 1, 2] : [];
  state.isIndeterminate = false;
};
const handleCheckedChange = (value) => {
  const checkedCount = value.length;
  state.checkAll = checkedCount === 3;
  state.isIndeterminate = checkedCount > 0 && checkedCount < 3;
};
.type-list .el-checkbox:first-of-type {
  margin-left: 80px;
}
2、分页el-pagination圆角
.pagination-box .el-pager li,
.pagination-box .el-pagination .btn-prev,
.pagination-box .el-pagination .btn-next {
  border-radius: 50%;
  background-color: #ffffff !important;
  box-shadow: 0px 2px 8px 0px rgba(0, 35, 114, 0.1);
}
.el-pagination.is-background .btn-next.is-active,
.el-pagination.is-background .btn-prev.is-active,
.el-pagination.is-background .el-pager li.is-active {
  background-color: #1e5eff !important;
}
.el-pagination .el-pagination__sizes .el-input__wrapper {
  border-radius: 14px;
  box-shadow: 0px 2px 8px 0px rgba(0, 35, 114, 0.1);
}

 
                    
                
 
 
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号