vue父组件与子组件通信
在父组件上弹出子组件
父组价代码
<template> <div> <div class=container> <el-button type=primary icon=el-icon-create @click=showAdd>新增 </el-button> <addDevice @add_dialogStatus=closeAdd :dialogStatus=addDialogStatus> </addDevice> </div> </div> </template> <script> //引入组件 import addDevice from ../common/addDevice;//引入子组件 export default { components: { addDevice //注册子组件,便于在本页面中使用 }, data() { return { addDialogStatus: false }; }, methods: { showAdd() { this.addDialogStatus = true; }, closeAdd() { this.addDialogStatus = false; } } }; </script> <style scoped> </style>
子组件代码段
<template> <el-dialog title=添加设备 :visible.sync=dialogFormViseble @close=closeDialog> <el-form ref=form :model=device_form style=margin-left: 30px> </el-form> <div slot=footer class=dialog-footer> <el-button @click=dialogFormViseble = false>取 消</el-button> <el-button type=primary @click=dialogFormViseble = false>确 定</el-button> </div> </el-dialog> </template> <script> export default { props: [dialogStatus],//子组件接受父组件数据 data() { return { dialogFormViseble: false }; }, methods: { closeDialog() { this.$emit(add_dialogStatus); } }, watch: { //子组件监听父组件的dialogStatus变化 dialogStatus(newLv, oldLv) { this.dialogFormViseble = newLv; } } }; </script> </style>
上一篇:
IDEA上Java项目控制台中文乱码