<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按钮,导致只有按钮可以点击,而其他组件点击无效。

相关推荐
CodeStats7 分钟前
【Java进程通信】Java进程通信系统完全指南:从ProcessBuilder底层原理到多语言实战
java·前端·python·进程·ai编程·processbuilder
鸿蒙开发8 分钟前
鸿蒙 ArkTS 校验库 @hmkit/validator 0.5.0:国际化、错误码和 Schema 组合都来了
前端
wenruozhu11 分钟前
【面试题解】 Vue 响应式原理
前端·面试
01_ice12 分钟前
前端学习JS(3)
前端·javascript·学习
无懈可击18 分钟前
Vue 低代码可视化 AI 表单设计器 FcDesigner v3.5 版本发布!
前端·vue.js·前端框架
哈__20 分钟前
极空间部署 Spug:集中管理主机、批量执行脚本与 Web 终端
前端
Web - Anonymous23 分钟前
Vue3 + Element Plus 集成 JSON Editor 实现实时校验 JSON 编辑器(高亮/暗亮主题/分栏回显/组件复用) - 附完整示例
vue.js·编辑器·json
Virony29 分钟前
React基础知识
前端·react.js·前端框架
Hilaku33 分钟前
外包前端和大厂前端,写的代码到底有什么本质区别?
前端·javascript·程序员
liangshanbo121543 分钟前
React Hooks 为什么不能在条件分支/循环中调用?
前端·react.js·前端框架