<el-form>标签与<el-col>之间的套用导致点击无效的问题

编写简单的<el-form>表单时,可以使用<el-col>用来进行布局,让相关的组件放在同一行。但是今天使用时发现有两个问题:

<el-row>

<el-col>

</el-col>

</el-row>

①如果用上以上这样的格式,布局无效

②如果不用<el-row>标签,则form表单的组件点击无效

问题原理:

经过查找之后发现,源码中在el-form-item.vue的代码中发现了这样一个计算属性:

复制代码
  1. form() {

  2. let parent = this.$parent;

  3. let parentName = parent.$options.componentName;

  4. while (parentName !== 'ElForm') {

  5. if (parentName === 'ElFormItem') {

  6. this.isNested = true;

  7. }

  8. parent = parent.$parent;

  9. parentName = parent.$options.componentName;

  10. }

  11. return parent;

  12. },

这里通过当前组件,一级一级向上找,直到找到el-form组件就返回,而其他计算属性/方法依赖form计算属性,这也就能解释为什么remark表单项能正常点击,而name和type表单项无法点击的问题了。

解决方法:

只使用 <el-col>,但使用时注意套住所有组件(即<el-form-item>),我在使用时忘记套用submit按钮,导致只有按钮可以点击,而其他组件点击无效。

相关推荐
夕阳_醉了31 分钟前
前端通用组件开发全指南|从 0 到 1 打造稳定可复用的业务组件
前端
Amos_Web36 分钟前
Rspack 源码解析(三十):SourceMapDevToolPlugin 如何生成并关联 source map
前端
console.log('npc')41 分钟前
从0到1实现任务评价统计功能:React + TypeScript 实战指南(小白注释版)
前端·react.js·typescript
IT_陈寒1 小时前
为什么你应该学习React?
前端·人工智能·后端
ZoeLandia1 小时前
React04:事件处理与受控表单
开发语言·前端·react.js·typescript
亿元程序员1 小时前
用AI做了一款微信小游戏,却发现上传不了
前端
Ai-_Man1 小时前
我需要批量导出Poe左边栏所有对话,而不是一条具体的对话内容,你们AI导出鸭可以吗?
开发语言·前端·javascript·人工智能·小程序
java1234_小锋1 小时前
【技术专题】HTML5 网页技术 - Web Storage 本地存储 & 文件 API & 拖放 API
前端·html·html5
恋猫de小郭1 小时前
Flutter 官方表示:AI 时代代码越来越容易写,为什么还要一套代码库?
android·前端·flutter
软件派1 小时前
Chrome 插件开发实战指南
前端·chrome