子组件挂载的时候,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

前往低代码交流专区

更多推荐