子组件挂载的时候,props传值,数据挂载命名:用驼峰命名法命名,在子组件在methods里才可以通过this.xx获取。
注意命名要规范。

父组件通过props传值给子组件,子组件在methods里要拿到父组件传递过来的数据有2种情况:
第一种:父组件传递的参数是固定的,data里面定义的参数,这时候在子组件通过this.xxx就可以获取到,但是要注意命名方式,如下:
父组件里:子组件在父组件挂载时绑定数据,注意前面要以“-”连接,后面要以驼峰规则命名

,data里面的数据命名

子组件获取的时候:通过props接收

这样,在methods里就能通过this.userName获取到父组件的数据。

第二种情况:父组件传递的参数是动态改变的,这种在子组件里按照上面的方式是获取不到动态改变后的数据的。这种情况下也有2种解决方法(也许还有其他方法)
1、用v-if 定义一个flag,初始为false,在动态改变了username的时候flag设置为true,
父组件:

子组件:


通过this.username就可以拿到动态改变后的数据
2、在子组件用watch监听数据的变化。

watch: { username: function (newVal,oldVal){ console.log(newVal,oldVal) } },
Logo

前往低代码交流专区

更多推荐