elementplu父级页面怎么使用封装子组件原组件的方法

一、使用原因:

封装了el-table,表格中有多选,父级要根据指定状态,让其选择不上,需要用到elementplus中table原方法toggleRowSelection

附加小知识点:(el-tree刷新树后之前选中的保持高亮setCurrentKey:orgnTreeDom.value.$refs.tree.setCurrentKey(treeObj.checkedKey);)

二、效果图:

三、代码结构

1、el-table封装的组件:

2、父级使用封装el-table结构部分

javascript 复制代码
父级使用封装el-table结构部分代码
1、结构
 <scada-table
        ref="companyTable" // 有用1
        index
        selection // 有用2
        maxHeight="60vh"
        :loading="tableObj.loading"
        :column-option="tableObj.columnOption"
        :table-data="tableObj.tableData"
        :pageData="tableObj.pageData"
        @currentChange="tableObj.currentChange"
        @sizeChange="tableObj.sizeChange"
        @selectionChange="tableObj.selectionChange" // 有用3
      >
      </scada-table>

2、selectionChange 每行多选方法
const companyTable = ref() // 有用1定义的ref
selectionChange: (data) => {
    tableObj.selectList = data;
    let leng = data.length
    if(leng > 0){
      data.forEach((item,ind)=>{
        if(item.contentStatus == '0' || item.contentStatus == '2'){
        //******这是重点***********
        companyTable.value.$refs.table.toggleRowSelection(data[ind], false);
        ElMessage.warning("该文章审核状态不符合发布操作!");
        }
      })
    }
    
    
  },
相关推荐
菜根Sec12 分钟前
XSS跨站脚本攻击漏洞练习
前端·xss
web1508541593515 分钟前
vue 集成 webrtc-streamer 播放视频流 - 解决阿里云内外网访问视频流问题
vue.js·阿里云·webrtc
m0_7482571819 分钟前
Spring Boot FileUpLoad and Interceptor(文件上传和拦截器,Web入门知识)
前端·spring boot·后端
桃园码工36 分钟前
15_HTML5 表单属性 --[HTML5 API 学习之旅]
前端·html5·表单属性
百万蹄蹄向前冲1 小时前
2024不一样的VUE3期末考查
前端·javascript·程序员
轻口味2 小时前
【每日学点鸿蒙知识】AVCodec、SmartPerf工具、web组件加载、监听键盘的显示隐藏、Asset Store Kit
前端·华为·harmonyos
alikami2 小时前
【若依】用 post 请求传 json 格式的数据下载文件
前端·javascript·json
吃杠碰小鸡2 小时前
lodash常用函数
前端·javascript
emoji1111112 小时前
前端对页面数据进行缓存
开发语言·前端·javascript
泰伦闲鱼2 小时前
nestjs:GET REQUEST 缓存问题
服务器·前端·缓存·node.js·nestjs