Vue表头下拉选择框使用总结

1、在el-table-culumn 中,加入template 标签,使用:

<template slot="header" slot-scope="scope">
  <el-dropdown trigger="click" @command = "handleCommand">
    <span>类型</span>
    <el-dropdown-menu slot="dropdown">
      <el-radio-group v-model="sx">//这里,会出现一个bug,下文有解决办法
        <el-dropdown-item command="属性0"><el-radio label="0">属性0</el-radio> </el-dropdown-item>
        <el-dropdown-item command="属性1"><el-radio label="1">属性1</el-radio> </el-dropdown-item>
        <el-dropdown-item command="属性2"><el-radio label="2">属性2</el-radio> </el-dropdown-item>
        <el-dropdown-item command="属性3"><el-radio label="3">属性3</el-radio> </el-dropdown-item>
        <el-dropdown-item command="属性4"><el-radio label="4">属性4</el-radio> </el-dropdown-item>
        <el-dropdown-item command="属性5"><el-radio label="5">属性5</el-radio> </el-dropdown-item>
        <el-dropdown-item command="属性6"><el-radio label="6">属性6</el-radio> </el-dropdown-item>
      </el-radio-group>
    </el-dropdown-menu>
  </el-dropdown>
</template>
<template slot-scope="scope">(表中元素)</template>

2、设置handleCommand方法:(当时没使用handleCommand方法做缓冲,在刷新时,第一次刷新不会赋值,第二次刷新会得到上次刷新的值。)

handleCommand(command) {
  if(command == '属性0' ){
    this.sx= '0'
  } else if (command === '属性1') {
    this.sx = '1'
  } else if( command === '属性2') {
    this.sx = '2'
  } else if (command === '属性3') {
    this.sx = '3'
  } else if (command === '属性4') {
    this.sx = '4'
  } else if( command === '属性5') {
    this.sx = '5'
  } else if (command === '属性6') {
    this.sx = '6'
  }
  this.刷新方法;
},

但是在使用过程中,点击下拉框中数据时,会出现执行两次handleCommand()方法的情况。通过一天的询问与查找,得到解决办法。

      问题出现在<el-radio>标签上,当点击框中数据时,数据响应一次handleCommand()方法,<el-radio>也会响应一次handleCommand()方法。所以,应该去掉<el-radio>标签与<el-radio-group>标签。

<template slot="header" slot-scope="scope">
  <el-dropdown trigger="click" @command = "handleCommand">
    <span>类型</span>
    <el-dropdown-menu slot="dropdown">
      <el-dropdown-item command="属性0">属性0</el-dropdown-item>
      <el-dropdown-item command="属性1">属性1</el-dropdown-item>
      <el-dropdown-item command="属性2">属性2</el-dropdown-item>
      <el-dropdown-item command="属性3">属性3</el-dropdown-item>
      <el-dropdown-item command="属性4">属性4</el-dropdown-item>
      <el-dropdown-item command="属性5">属性5</el-dropdown-item>
      <el-dropdown-item command="属性6">属性6</el-dropdown-item>
    </el-dropdown-menu>
  </el-dropdown>
</template>
<template slot-scope="scope">(表中元素)</template>

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要给Vue中的下拉列表赋值,可以使用v-model指令来进行数据绑定。在数据对象中定义一个属性,然后将该属性与下拉列表的选中值进行绑定即可。在提供的代码中,可以看到在Vue实例中的data属性中定义了一个名为optionsList的数组,该数组包含了下拉列表的选项。每个选项都有一个key和value属性,分别表示显示的文本和对应的值。在Vue实例中,将该数组与下拉列表的v-model进行绑定,即使用v-model="selected",其中selected是Vue实例中定义的一个属性,用于存储选中项的值。通过这种方式,Vue会自动将选中的值与selected属性进行绑定,并在下拉列表的选中项变化时更新selected的值。因此,就实现了给下拉列表赋值的功能。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [使用Vue实现下拉列表批量添加选项](https://blog.csdn.net/cnds123321/article/details/104030850)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [vue+Element中table表格实现可编辑(select下拉框)](https://download.csdn.net/download/weixin_38598213/13129617)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [vue下拉菜单的赋值问题](https://blog.csdn.net/m0_72167535/article/details/127051361)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值