记录vue开发实例

封装的表格组件



      

 引入使用

记录vue开发实例_第1张图片

 记录vue开发实例_第2张图片记录vue开发实例_第3张图片

 element组件fixed="right" 表格错位

记录vue开发实例_第4张图片

 解决方法

1,记录vue开发实例_第5张图片

2,记录vue开发实例_第6张图片

3,记录vue开发实例_第7张图片

 通过数组数量循环input标签数量填写表单

paramsInfo.fieldList的值

记录vue开发实例_第8张图片

targetDataList的值

记录vue开发实例_第9张图片 表单循环targetDataList获取 label值(即有多少个input标签的生成),表单填写的内容绑定在 paramsInfo.fieldList[index].fieldValue

        
              

            

 根据表头获取输入框数量

记录vue开发实例_第10张图片

 根据表头的数量,新增的输入框数量

    //增加按钮
    addBtn() {
      // 检查 scopeBranchLists 不为空且包含 fieldName 属性
      if (Array.isArray(this.scopeBranchLists) && this.scopeBranchLists.length > 0) {
        // 使用 map 函数从 scopeBranchLists 中提取 fieldName 值
        //fieldNames = ['index_name', 'dept_name', 'comment', 'dept_type', 'options', 'unit', 'source_priority']
        // let fieldNames = this.scopeBranchLists.reduce((acc, item) => {
        //   acc[item.fieldName] = '';
        //   return acc;
        // }, {});
        const fieldNames = this.scopeBranchLists.map(item => item.fieldName);
        var fieldNamesObj = {};
        for (var i = 0; i < fieldNames.length; i++) {
          fieldNamesObj[fieldNames[i]] = null;
        }
        //this.formData = fieldNamesObj
        this.rows.push(fieldNamesObj);

      }
    },

 表头数据 

{{ item.fieldDesc }}

 生成的input框数量(5个表头,生成对应五个输入框 为一个对象,最后放入rows数组)

完整代码

          
{{ item.fieldDesc }}

你可能感兴趣的:(Vue初学,企业实战,vue.js,elementui,javascript)