前端那些事20240119-前端那些事-avue表格行改变结构配置

<avue-crud ref="crud" :defaults.sync="defaults" :option="option"  :data="data">
  <template slot="menuLeft" slot-scope="{size}">
    <el-button type="primary" :size="size" @click="change">改变配置</el-button>
  </template>
</avue-crud>
<script>
export default {
  data(){
    return {
       type:false,
       defaults:{},
       data:[{
          text1:0
       }],
       option:{
          column: [{
            label: '内容1',
            prop: 'text1',
            type:'radio', 
            dicData:[{
              label:'显示',
              value:0
            },{
              label:'隐藏',
              value:1,
            }]
          },{
            label: '内容2',
            prop: 'text2',
            display:true
          },{
            label: '内容3',
            prop: 'text3'
          }]
       }
    }
  },
  methods:{
    change(){
        if(this.type){
          this.defaults.text2.hide=true
          this.defaults.text3.label='内容3'
        }else{
          this.defaults.text2.hide=false
          this.defaults.text3.label='有没有发现我变了'
        }
        this.type=!this.type
        this.$refs.crud.refreshTable()
    }
  }
}
</script>

运行结果

  • 10
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Avue提供了一个方便的方法,可以将前端表格转换为表单。首先,你需要在页面中引入Avue的js和css文件: ```html <link rel="stylesheet" href="https://unpkg.com/avue@2.2.2/packages/theme-chalk/index.css"> <script src="https://unpkg.com/avue@2.2.2/lib/index.js"></script> ``` 然后,你需要将你的表格代码包装在一个`<el-table>`标签内,并添加一个`ref`属性(例如`ref="myTable"`)。接下来,你需要在页面中添加一个按钮,当用户点击该按钮时,将会触发转换表格为表单的操作: ```html <template> <div> <el-table :data="tableData" style="width: 100%" ref="myTable"> <!-- 表格列定义 --> </el-table> <el-button @click="convertTableToForm">转换为表单</el-button> </div> </template> ``` 最后,在Vue组件的`methods`中定义`convertTableToForm`方法,该方法将获取表格数据并将其转换为表单数据。具体代码如下: ```js methods: { convertTableToForm() { const tableData = this.$refs.myTable.store.states.data const formFields = [] tableData.forEach((row) => { Object.keys(row).forEach((key) => { formFields.push({ label: key, prop: key, value: row[key] }) }) }) this.formFields = formFields } } ``` 在`convertTableToForm`方法中,我们首先获取表格数据,然后循环遍历每一数据,将每个单元格的名称作为表单的`label`和`prop`,将单元格的值作为表单的`value`,最后将所有表单字段保存在`formFields`数组中。现在,你已经成功将前端表格转换为表单!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值