ElementUI动态添加表单项

昨天感冒发烧了,脑子不好使。在实现这个动态表单项时一直报错脑瓜子嗡嗡的!

不过好在昨天休息好了,今天起来趁脑瓜子好使,一会就弄好了。

这里记录一下

html 复制代码
        <el-form-item
            v-for="(classId,index) in addFom.classIds"
            :label="`班级${index+1}`">
            <el-row :gutter="12">
              <el-col :span="12">
                <el-input v-model="classId.classId"></el-input>
              </el-col>
              <el-col :span="5">
                <el-button type="danger" icon="el-icon-delete" circle @click="removeClassId(index)"/>
              </el-col>
            </el-row>
          </el-form-item>
          <el-form-item>
            <el-button type="success">提交</el-button>
            <el-button @click="addClassId" :disabled="disabled">添加班级</el-button>
          </el-form-item>
javascript 复制代码
  data(){
    return{
       addFom: {
        teaName: '',
        teaSex: true,
        teaType: true,
        teaPhone: '',
        seniority: 0,
        classIds: [
          { classId: '' }
        ]
      }
    }
  }


/* 动态添加表单行 */
    addClassId() {
      this.addFom.classIds.length < 6 ? this.addFom.classIds.push({ classId: '' }) : this.disabled = true
    },
    /* 动态删除表单行 */
    removeClassId(index) {
      this.addFom.classIds.splice(index, 1)
      this.disabled = false
    }

总结

其实就是利用了vue的v-for循环渲染。通过添加数组实现动态添加表单项

相关推荐
m0_736034851 小时前
1.28笔记
前端·chrome·笔记
奔跑的web.6 小时前
TypeScript 装饰器入门核心用法
前端·javascript·vue.js·typescript
集成显卡7 小时前
Lucide Icons:一套现代、轻量且可定制的 SVG 图标库
前端·ui·图标库·lucide
pas1367 小时前
37-mini-vue 解析插值
前端·javascript·vue.js
十里-8 小时前
vue.js 2前端开发的项目通过electron打包成exe
前端·vue.js·electron
雨季6669 小时前
构建 OpenHarmony 简易文字行数统计器:用字符串分割实现纯文本结构感知
开发语言·前端·javascript·flutter·ui·dart
小北方城市网9 小时前
Redis 分布式锁高可用实现:从原理到生产级落地
java·前端·javascript·spring boot·redis·分布式·wpf
console.log('npc')9 小时前
vue2 使用高德接口查询天气
前端·vue.js
2401_892000529 小时前
Flutter for OpenHarmony 猫咪管家App实战 - 添加支出实现
前端·javascript·flutter
天马37989 小时前
Canvas 倾斜矩形绘制波浪效果
开发语言·前端·javascript