当前位置:首页 > 编程笔记 > 正文
已解决

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

来自网友在路上 143843提问 提问时间:2023-09-21 15:52:38阅读次数: 43

最佳答案 问答题库438位专家为你答疑解惑

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

查看全文

99%的人还看了

猜你感兴趣

版权申明

本文"<el-form>标签与<el-col>之间的套用导致点击无效的问题":http://eshow365.cn/6-10798-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!