element+Vue2,在一个页面跳转到另一个页面,并自动选中table的某一行

  • 需求:点击A页面的某处,跳转到B页面并选中B页面表格的某一行(点击B页面的搜索后需要清空默认选择的状态)
  • 环境:vue2、element的table,table允许多选
  • 知识点:主要使用到table的这两属性::row-key="":reserve-selection="true和表格的toggleRowSelection方法,还有getList()的回调函数的使用就是getlList要有返回值,通知create里在getlis调取成功t后再做什么,不然渲染报错
    在这里插入图片描述
    在这里插入图片描述
  • 代码
// html
<el-table 
            :header-cell-style="{background:'#d0d0d0',color:'#000'}" 
            ref="reportmul"
            :data="tableData"
            style="width: 100%"
            height="700"
            @selection-change="handleSelectionChange"
            @row-click="rowClick"  
            :row-style="rowStyle" 
            :row-class-name="rowClassName"
            
            :row-key="getRowKeys"
           
          >
          <el-table-column type="selection"  align="center" :reserve-selection="true"></el-table-column>
		// .......
</el-table>

// B页面js
	// 其他页面跳转到B页面时需要再created里判断是不是跳转而来,通常是判断路由有没有带参数,然后执行getList获取页面数据,有数据后才能设置默认选中操作!
data() {
      return{
          searchVal:'',// 搜索
          multipleSelection:[],// 当前选择的行
          tableData:[],// table数据
          }
         },
created(){
    // 初始化
    if(this.$route.params.input){
      this.searchVal = this.$route.params.input
      await this.getList().then(res=>{
       
         /**
         * 如果跳转过来,就给multipleSelection 赋值初始值
         */
        this.multipleSelection[0] = this.tableData[0]
        this.$refs.reportmul.toggleRowSelection(this.tableData[0],true)//这句重点
      })
    }
   this.getList()
  },
 methods: {
	getList(obj={}){
     return listgetpage(xxx).then(res=>{
              this.tableData  = res.data.result
             
      })
     },

	/** 搜索 */
    onSearch(){
      this.getList({input:this.searchVal}).then(()=>{
      // 搜索后清空默认选择
        // this.multipleSelection =[]
        this.$refs.reportmul.clearSelection()
      }
     )
      

    },

}

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-29 01:12:02       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-29 01:12:02       106 阅读
  3. 在Django里面运行非项目文件

    2024-03-29 01:12:02       87 阅读
  4. Python语言-面向对象

    2024-03-29 01:12:02       96 阅读

热门阅读

  1. 每日OJ题_栈②_力扣844. 比较含退格的字符串

    2024-03-29 01:12:02       50 阅读
  2. 在nodejs中打开浏览器网页

    2024-03-29 01:12:02       40 阅读
  3. mysql select

    2024-03-29 01:12:02       36 阅读
  4. OCR识别文字示例

    2024-03-29 01:12:02       43 阅读
  5. 数组常见算法代码总结

    2024-03-29 01:12:02       43 阅读
  6. 02 React 组件使用

    2024-03-29 01:12:02       45 阅读
  7. vue的插槽

    2024-03-29 01:12:02       48 阅读
  8. C语言-数据在内存存储

    2024-03-29 01:12:02       36 阅读
  9. Linux小程序: 手写自己的shell

    2024-03-29 01:12:02       40 阅读