element plus支持labelInValue的写法

const setLabelValue = (_item, data) => {
  const { optionsKey } = data;
  if (data.labelInValue) {
    return {
    label: optionsKey ? _item[optionsKey.label] : _item.label,
      value: optionsKey ? _item[optionsKey.value] : _item
  };
  } else {
     return {
    label: optionsKey ? _item[optionsKey.label] : _item.label,
    value: optionsKey ? _item[optionsKey.value] : _item.value,
  };
  }
};

// 选择框
const Select = (form, data) => (
  // value-key="id"
  <ElSelect
    size="default"
    v-model={form[data.prop]}
    filterable
    disabled={data.disabled}
    clearable
    placeholder={'请选择' + data.label}
    {...data.props}
  >
    {
      data.options ? data.options.map((item) => {
      return <ElOption {...setLabelValue(item, data)} />;
      }):''
    }
  </ElSelect>
);

ant-design用惯了,想在element plus中也能使用labelInValue的方式同时获取label和value

能实现主要靠的是element plus支持value-key的写法

value绑定item就行啦。

可以使用配置项直接配置labelInValue了

 {
        label: '姓名',
        required: true,
        type: 'select',
        prop: 'ryId',
        labelInValue: true,
        options: peopleList
 },

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
element plus 表单验证的js写法可以采用以下方式: 1. 同步校验的写法: ```javascript this.$refs\[formName\].validate((valid) => { console.log('valid result: ' + valid); }); ``` 这种写法可以在表单校验完成后执行回调函数,回调函数中的参数`valid`表示校验结果,可以根据需要进行处理。\[1\] 2. 异步校验的写法: ```javascript this.$refs\[formName\].validate(async (valid) => { if (valid) { // 执行异步校验逻辑 // ... } }); ``` 在异步校验的写法中,可以在校验通过后执行异步校验逻辑。\[1\] 3. 设置验证规则的写法: 可以在表单项(`<el-form-item>`)中单独设置验证规则,例如: ```html <el-form-item label="邮箱:" prop="email" :rules="\[{ type: 'email', message: '邮箱格式错误', trigger: 'change' }\]"></el-form-item> ``` 在这种写法中,通过`prop`属性指定表单项的字段名,通过`:rules`属性设置验证规则,可以设置多个规则,包括类型、错误提示信息和触发时机等。\[2\]\[3\] #### 引用[.reference_title] - *1* *2* *3* [element-plus表单验证使用 个人总结](https://blog.csdn.net/ymzhaobth/article/details/120820053)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值