怎样使用父组件向子组件传值【 必看】

版权声明:https://blog.csdn.net/weixin_43814195?t=1 https://blog.csdn.net/weixin_43814195/article/details/84892753

呃呃,首先小仙女初学Vue传值的时候,是费尽了脑汁,不知道怎么回事。终于,功夫不负有心人,把他弄明白了,如有错误,请多指教!!

首先在学习Vue的框架开发的项目过程中,会经常会用到组件来管理不同的功能,有些公共的东西会就会被抽取出来,当做组件去使用。
这时必然会产生一些疑问和需求?比如一个组件调用另一个组件作为自己的子组件,那么我们如何进行给子组件进行传值呢?就先和小编一起探究一下吧!

父向子传递props

Vue.component("introduce",{
    // 直接使用props接收到的属性来渲染页面
    template:'<h3>{{title}}</h3>',
    props:['title'] // 通过props来接收一个父组件传递的属性
})
  • 这个子组件中要使用title属性渲染页面,但是自己并没有title属性
  • 通过props来接收父组件属性,名为title
    父组件使用子组件,同时传递title属性:
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>父向子传递</title>
    <script src="../vue-2.5.17.js"></script>
</head>
<body>
<div id="app">
<input type="text" v-model="myname">
    <counter :name="myname" ></counter>

</div>
<script>
Vue.component("counter",{
    template:`<h1>我喜欢的明星是 :{{name}}</h1>`,
    props:['name'] //引号中名字就是变量,这种定义,就表示从父组件获取值,调用组件的时候,以属性的方式将值传递进来
})

    var vm=new Vue({
        el:"#app",
        data:{
            myname:"",
        }
    })

</script>

</body>
</html>

效果如下:
在这里插入图片描述

传递复杂数据

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>父向子传值</title>
    <script src="../vue-2.5.17.js"></script>
</head>
<body>

<div id="app">

    <mylist :lessions="lessions"></mylist>
</div>
<script>

Vue.component("mylist",{
    template:`<ul>
                <li v-for="lession in lessions">{{lession.id}} - {{lession.name}}</li>
            </ul>`,
    props:['lessions']

})


var vm = new Vue({
   el:"#app",
    data:{
       lessions:[{id:1,name:"java"},
           {id:2,name:"mysql"},
           {id:3,name:"servlet"},
           {id:4,name:"mybatis"}
       ]
    }

});

</script>


</body>
</html>

效果图:
在这里插入图片描述

好了,父组件向子组件传值,就是这么 easy ! 你 学会了吗? 如果还不会,别着急,一张图绝对搞定

看好了!!!!!!!!!!!!!!!
在这里插入图片描述
在这里插入图片描述

哎呀呀,好了,以上内容就是父组件向子组件传值!!!!!!

猜你喜欢

转载自blog.csdn.net/weixin_43814195/article/details/84892753