zoukankan      html  css  js  c++  java
  • 哈哈 v-model 传递参数给子组件

    最近再敲vue3的一些东西,这边需要在子组件改变props中的值,从而关闭el-dialog 【当然还一种不完善的也可以关闭el-dialog 在子组件在设置一个变量isShow 当然首先需要将show的值传给isShow,然后通过isShow来控制el-dialog的开关和关闭,也不需要什么v-model和sync 】,之前就听说vue是单向数据流 不能这样操作;但 神奇的人类们 发现sync 和 v-model这俩玩意;但在vue3 中这个sync似乎不起作用了 可能是我的姿势错了;

    不多bb

    <!-- father.vue --> 
    <AddRole v-model:show='addButton' @closeDialog ='addButton = false'></AddRole>

    <script>
    setup(){
     const addButton = ref(false)
    }
    </script>

    //son.vue
    <el-dialog title="新增" v-model="show" width='30%' :close-on-click-modal='false' :show-close='false'>
      <el-button type="primary" @click="handleAdd">确 定</el-button>
    </el-dialog>
     
    <script>
    export default{
      name:"AddRole",
      props:{
        show:{
          type: Boolean,
          default: false
        }
        
      },
    emits:['closeDialog','update:show'], //不搞这玩意会出警告,但我这边确实不知道原理,纯api使用者 这里的show就是传过来的那个show 可能吧
    setup(props,{emit}){
     const handleAdd = ()=>{
      emit('update:show',!props.show)//由于更改props.value会出警告 说什么 readonly 似乎是设置了props传过来的值 只读无法更改 也变相说明了vue的单向数据流,这边传值就传个定值就好;
    }
    }
      
      
    }
    </script>
  • 相关阅读:
    vue-Prop
    C#四舍五入的方法
    设计模式-建造者模式
    vue-解决Vue打包上线之后部分CSS不生效的问题
    vue项目兼容IE浏览器
    html-box-sizing
    MSSQLSERVER执行计划详解
    white-space和word-wrap和word-break所表示的换行和不换行的区别
    JS设置cookie、读取cookie、删除cookie
    windows7 telnet服务开启和登录授权
  • 原文地址:https://www.cnblogs.com/diligent-noob/p/14609625.html
Copyright © 2011-2022 走看看