天天看点

Vue简单创建一个项目(六)

父子组件之间的传值

父亲传给儿子:

父亲:

<v-home :title="title" :run="run"  :home="this"></v-home>
 data:{title:"zhi"},method:{run(s){alert("hello"+s)}}
           

儿子:

methods:{},props:['title','run','home']
{{title}}
<button @click="run()"><.button>
<button @click="run('simalinjia')"><.button>//传参的扩展
           

对home的应用,可以给子组件定义一个方法,来调用父组件的一切

儿子的:

methods:{getParentData(){alert(this.home.title);this.home.run()}}
           

父组件给子组件传值的时候可以验证合法性:

儿子的:

methods:{},props:['title':String,'run','home':Object]
           

父组件主动获取子组件的数据和方法:

<v-home ref="son"></v-home>
methods:{
get(){
    this.$refs.son.msg
this.$refs.son.run
      }
}
           

子组件主动获取父组件的数据和方法:

methods:{
    get(){
        this.$parent.msg
        this.$parent.run
          }
    }