前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >jeecgboot-vue3笔记(二)主子组件数据加载

jeecgboot-vue3笔记(二)主子组件数据加载

作者头像
用户1637609
发布2022-05-24 15:08:42
1.3K0
发布2022-05-24 15:08:42
举报
文章被收录于专栏:马洪彪

需求

页面上部分为主组件,内容为表格jvxetable,下部分为子组件,内容也为表格。 当切换主组件表格行时,子组件表格显示主记录相关的子记录。 例如上方显示学生信息,下方显示选中学生的考试成绩信息。

实现思路

  • 设置行切换点击时勾选行 clickSelectRow
  • 响应行勾选事件 @selectRowChange="handleSelectRowChange"
  • 过滤掉全选操作 if(event.action == "selected-all")return;//勾选全部时row为undefined
  • 获取操作(选中或去选无所谓)行的id currentRowId = event.row.id;//当前选中行ID
  • 调用子组件方法(loadData),传递参数给子组件 refAnalyte.value.loadData(currentRowId);

父组件调用子组件方法

  • template引入子组件,并设置ref
  • script定义组件的引用变量 const refAnalyte = ref<null | HTMLElement>(null);
  • 子组件暴露方法 defineExpose({ loadData });
  • 父组件在目标处(例如行切换事件响应处)使用子组件调用其方法,并传递参数 refAnalyte.value.loadData(currentRowId);

应用效果

代码

代码语言:javascript
复制
// 当选择的行变化时触发的事件
function handleSelectRowChange(event) {
  // console.log("row select change"); 
  if(event.action == "selected-all")return;//勾选全部时row为undefined
  // console.log(event.row.id) 
  currentRowId = event.row.id;//当前选中行ID
  refAnalyte.value.loadData(currentRowId);
  refTestMethod.value.loadData(currentRowId);
}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-05-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 需求
  • 实现思路
    • 父组件调用子组件方法
    • 应用效果
    • 代码
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档