• vue父子组件传值


    vue中组件的嵌套数值传递一直不是很清晰,今天理清下思路。

    1、在页面中有一个父组件的模板。

    从父传给子的数值:我是父亲
    我是子组件

    
    
    
    <template>//父组件
      <div>
        <div>
          <son :fatherdata="name" @getdata="getdataval"></son>  //子组件    //1.1      //2.2    
    {{sondata}} //2.4
    </div> </div> </template> <script> import son from './Son.vue' //引入子组件
     export default{
    data(){
    return(){
    name:
    '我是父亲',
    sondata:'' //2.4
    }
    },
    components:{   //引入子组件
     son
    },
    methods:{
    getdataval(data){ //2.3
    this.sondata=data //2.4
    }
    }
    
    
      }
    </script>
    新起一个页面Son.vue
    <
    template>//子组件 <div> <div> <h1>从父传给子的数值:{{fatherdata}}</h1> //1.3
    <button @click="send">将数据传递给父</button> //2.1 </div> </div> </template> <script> export default{ data(){ return(){ message:'我是子组件' } },
    props:['fatherdata'],//1.2
    methods:{
    send(){
    this.$emit('getdata',this.message) //2.1
    }
    }
    }
    </script>

    1、父组件向子组件传值

            1、在子组件的标签里通过v-bind绑定一条属性,属性值为父组件的数据名称。

            2、在子组件的模板中利用props属性把已经绑定的属性值写进去。

            3、在子组件的template中就可以使用这个数据了。

    2、子组件向父组件传值(使用自定义事件)

           1、在发数据组件的methods里定义一个方法,方法中使用如下:this.$emit('event',value)。其中event是自定义事件名,value是要传递的数据。

            2、在发数据组件的标签里  @自定义事件名称=“函数名” 。

            3、在接收组件的methods里,函数名(val){val}  。其中val就是接收的数据了。

            4、在接收组件中声明值,就可以正常调用

        

  • 相关阅读:
    jstack 分析程序性能
    网关-zuul介绍 第一篇 网关解决的问题
    通过Fegin远程调用 ,返回JPA Page 对象报错
    css自定义字体
    CSS3选择器
    表格操作
    商品筛选条件
    多级菜单
    一排元素往下掉
    控制提示框不溢出父级盒子
  • 原文地址:https://www.cnblogs.com/colorful-paopao1/p/11327483.html
Copyright © 2020-2023  润新知