为了账号安全,请及时绑定邮箱和手机立即绑定

关于props的问题

关于props的问题

Cats萌萌 2019-01-05 18:28:00
用element做了个对话框,控制对话框弹出的visible.sync属性值由props接收父组件传来的值,一开始功能正常,但是在点击关闭对话框的时候会产生警告,原因是elemen自带的关闭按钮操作了props,遂改变方法使用变量替代props,但是发现无法正常切换,求解答<template>   <el-dialog title="收货地址" :visible.sync="visible">   <el-table :data="gridData">     <el-table-column property="date" label="操作时间"></el-table-column>     <el-table-column property="name" label="操作人"></el-table-column>     <el-table-column property="detail" label="操作内容"></el-table-column>     </el-table></el-dialog></template><script>   export default{    props:['dialogTableVisible','gridData'],     data(){      return {        visible:this.dialogTableVisible       }     }   }</script>
查看完整描述

1 回答

?
潇潇雨雨

TA贡献1833条经验 获得超4个赞

控制组件显示的还是用父组件中传的参数

<el-dialog title="收货地址" :visible.sync="dialogTableVisible">

监听一个它的关闭事件

<el-dialog title="收货地址" :visible.sync="dialogTableVisible" @close="handleClose">
methods: {
    handleClose(value){        this.$emit('close', value);
    }
}

父组件中再监听子组件emit出来的close事件

<child @close="handleClose" :dialogTableVisible="dialogTableVisible" />
methods: {
    handleClose(value){
        console.log(value);       // 在这里修改 dialogTableVisible 的值
       this.dialogTableVisible = value;
    }
}


查看完整回答
反对 回复 2019-01-05
  • 1 回答
  • 0 关注
  • 751 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信