李林
2024-03-13 eb2f43c595f6e0602c74ba8516b6324ffcab3e59
src/components/tool/value-table.vue
@@ -64,11 +64,11 @@
                        :type="b.type" size="medium">{{b.label}}</el-tag>
                  </div>
            <!-- 可操作行进行点击事件 -->
            <span v-else-if="data.linkEvent&&showLink(a.label, data.linkEvent)" style="color:#409EFF;cursor: pointer;" @click="$emit(showLink(a.label, data.linkEvent),scope.row)">{{scope.row[a.label]}}</span>
            <span v-else-if="data.linkEvent&&showLink(a.label, data.linkEvent)" style="color:#409EFF;cursor: pointer;" @click="handleLinkEvent(scope.row,data.linkEvent[a.label])">{{scope.row[a.label]}}</span>
                  <span v-else>{{scope.row[a.label]}}</span>
               </template>
            </el-table-column>
            <el-table-column fixed="right" align="center" label="操作" :width="60 + data.do.length * 40"
            <el-table-column fixed="right" align="center" label="操作" :width="getWidth()"
               v-if="data.do.length > 0">
               <template slot-scope="scope">
                  <el-button v-for="(a, ai) in data.do" :key="ai" :type="a.type"
@@ -471,7 +471,8 @@
               }
            } else {
               delete row.orderBy
               this.$emit(val.method, row)
               this.$parent[val.method](row)
               // this.$emit(val.method, row)
            }
         },
         saveUpData() {
@@ -703,6 +704,20 @@
               }
            });
            return sums;
         },
      handleLinkEvent(row,val){
        if(val.method=='doDiy'){
          this.main(row,val)
        }else{
          this.$emit(val.method,row)
        }
      },
         getWidth(){
            let count = 0
            this.data.do.forEach(a=>{
               count += a.font.length
            })
            return count * 15 + 60 + 'px'
         }
      }
   }