vue 组件化弹窗列表以及获取数据
列表以及获取数据你们自己写,重点在于俩个方法以及传参和获取方式
// 注意: 取消方法一定要传空数组,不然容易造成列表取消了勾选仍然能获取到数据
1 2 | <el-button type= "primary" @click= "submit" >确 定</el-button> <el-button @click= "submitReset" >取 消</el-button> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | submit() { //有勾选的时候获取传的数据 this .chooseOption.push({ // 父子组件传参,单个可以直接传,多个的时候用数组 open: false , // 是否打开弹窗 selectData: this .selectData, // table 数组 全选获取到的数据 }); this .$emit( "chooseStudent" , this .chooseOption); this .chooseOption = []; this .selectData = []; this .$refs.multipleTable7.clearSelection(); }, submitReset(){ // 没有勾选的时候传的数据 this .$emit( "chooseStudent" , []); this .chooseOption = []; this .selectData = []; this .$refs.multipleTable7.clearSelection(); }, |
以下例子作为参考代码,不可全照抄
//应用:单文件引入并且注册。
备注: 这里 chooseStudent 是 你写的table组件的 vue 文件,仅仅作为例子,不可照抄
特别备注: @chooseStudent 要和 子组件的 $emit 的参数一致 this.$emit("chooseStudent", 这里是 table 点击的参数赋值 );
1 | <chooseStudent @chooseStudent= "getChooseStudent" /> |
1 2 3 4 5 | import chooseStudent from "@/views/educational/courseSelectionPay/chooseCourse/chooseStudent.vue" components: { chooseStudent }, |
1 2 3 4 5 6 7 8 9 10 | getChooseStudent(data) { this .missedDialogVisible2 = data.open; //这里是 打开弹窗的参数,用 data.open 来对应 if (data[0].selectData.length != 0) { // 这里限定了只有 有数据的才能进,防止点击了取消传了空数组导致这里数据丢失问题 this .missedTableData2 = [] this .missedTableData2 = data[0].selectData } }, |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通