美文网首页
子组件中修改props的正确方式

子组件中修改props的正确方式

作者: world_7735 | 来源:发表于2021-05-27 13:20 被阅读0次

首先我们创建子父组件

父组件传值msgVal给子组件

<template>

<div style="height:5000px;background:#fff;">
    <h5>子父组件传值(子组件改变prop值)</h5>
    <p>
        {{msg}}
    </p>
    <vChild :msgVal='msg'></vChild>
    
</div>
</template>

<script>

import vChild from './vChild.vue'
export default {
    components:{
        vChild
    },
    data(){
        return{
           msg:'这是父组件哦'     
        }
    }
}
</script>

<style lang="scss" scoped>

</style>

2.在子组件中:(我们尝试用changeProps直接改变msgVal值)

<template>

<div style="height:5000px;background:#fff;">
    <h5>子组件</h5>
    props:{{msgVal}}
   <el-button @click="changeProps"> Start</el-button> 
</div>
</template>

<script>

export default {
    props:['msgVal'],
    data(){
        return{

        }
    },
    methods:{
        changeProps(){
            this.msgVal = '改变了props'
        }
    }
}
</script>

<style lang="scss" scoped>

</style>

控制台报错
简单来说就是 他希望避免直接改变该属性 最好用计算属性值或者基于属性值的数据来去修改他

所以~我们可以这样:
plan1:``` data中声明mag1 在 mounted函数中初始化赋值 后续操作直接用mag1来代替

msgVal

        props:['msgVal'],
        data(){
            return{
                mag1:''
            }
        },
        methods:{
            changeProps(){
                console.log('111111')
                this.mag1 = '改变了props'
            }
        },
        mounted(){
            this.mag1 = this.msgVal
        },
        computed:{
           msg2(){
               return this.msgVal
           } 
        },
    }

PlanB:用计算属性来获取值 msg2即为props传参数的值 后续直接用它~

相关文章

  • 子组件中修改props的正确方式

    首先我们创建子父组件 父组件传值msgVal给子组件 2.在子组件中:(我们尝试用changeProps直接改变m...

  • Refs和Refs 转发

    1、定义 在React 数据流中,props是父组件与子组件交互的唯一方式。需要修改子组件,要使用新的props来...

  • React中的Refs & DOM

    在React数据流中,父子组件唯一的交流方式是通过props属性;如果要修改子组件,通过修改父组件的属性,更新达到...

  • 对props属性的回溯

    在前端框架中,数据流是单向的,比如在子组件中props是只读的,想要在子组件对props进行修改,只能在子组件中调...

  • refs and the dom

    React数据流是单向的,通过props由父组件向子组件传递数据,如果要修改子组件,需要修改props来重新渲染子...

  • Vue组件传值

    vue组件传值 一、父组件向子组件传值方式: 1. 子组件中定义props,父组件向子组件props进行传值。 2...

  • 13-Refs and the DOM

    Refs and the DOM 在典型的React数据流中,props是父级组件与子组件交互的唯一方式。为了修改...

  • 深入理解React组件

    1、组件 state ( 组件属性的定义和修改方式 )   组件中的属性分为state、props 和 普通属性。...

  • 组件通信之props

    一、props不为对象 当父组件修改props的值时子组件中值跟随改变;当子组件中值改变时 报错 且父组件值无变化...

  • 3.ReactJS组件通信

    1.子组件如何调用父组件this.props采用props的方式进行调用和赋值,在父组件中设置相关属性值或者方法,...

网友评论

      本文标题:子组件中修改props的正确方式

      本文链接:https://www.haomeiwen.com/subject/tdnrsltx.html