美文网首页
vue 通过 prop 向子组件传递数据

vue 通过 prop 向子组件传递数据

作者: 闲睡猫 | 来源:发表于2019-10-15 22:23 被阅读0次

组件作用域

<div id="app">
    <my-component></my-component>
</div>
<script>
    let app = new Vue({
        el: "#app",
        data: {
            // 父组件的数据
            msg: "父组件定义的数据"
        },
        components: {
            myComponent: {
                // 子组件无法直接调用父组件的数据
                template: "<h1>能不能调用父组件定义的数据?{{ msg }}</h1>"
            }
        }
    })
</script>
image

运行上面的代码,我们发现,组件 my-component 并不能获取实例中 data 的数据,这是因为组件与组件之间都拥有各自独立的作用域

源码

组件间传值

vue 在组件中提供了 props 选项,props 接受一个在组件中自定义属性的值;

<div id="app">
    <my-component :son_msg="msg"></my-component>
</div>
<script>
    let app = new Vue({
        el: "#app",
        data: {
            // 父组件的数据
            msg: "父组件定义的数据"
        },
        components: {
            myComponent: {
                props: [
                    'son_msg'
                ],
                // 子组件无法直接调用父组件的数据
                template: "<h1>调用父组件的数据: {{ son_msg }}</h1>"
            }
        }
    })
</script>
image

视图调用组件时,将父组件的 msg 数据传递给 son_msg ,子组件接收及使用 son_msg

源码

原文:https://www.itshutong.com/243.html

相关文章

  • Vue组件间数据的传递

    通过 Prop 向子组件传递数据 通过事件向父组件发送消息

  • vue父子组件交互

    一、父组件向子组件传值 通过 Prop 向子组件传递数据 父组件 子组件接收 单向数据流:父级 prop 的更新会...

  • Vue如何实现组件通信?

    Vue组件通信的三种情况: 父子通信 爷孙通信 兄弟通信 父子通信:父组件使用Prop向子组件传递数据,子组件通过...

  • Vue 的组件之间如何通信

    1.父子组件之间的消息传递 父组件向子组件传递数据是通过prop传递的,子组件传递数据给父组件是通过$emit触发...

  • vue 组件通信

    本文主要解决vue组件之间的通信问题 Prop 向下传递,事件向上传递 Prop (主要用于父组件向子组件下发数据...

  • vue组件通信(父子)

    在 Vue 中,父子组件的关系可以总结为 prop 向下传递,事件向上传递。父组件通过 prop 给子组件下发数据...

  • Vue-自定义事件

    在父组件使用prop 传递数据给子组件,子组件则是通过事件传递数据给父组件的。 Vue实例都会实现事件接口: 1....

  • 2018-03-29

    子组件向父组件传递事件 父组件的数据是通过变量传递给子组件,子组件内的prop接受数据;子组件内部发生的事件,子组...

  • Vue.js中异常高效可用的.sync修饰符

    前言 在Vue.js中,父子组件进行数据通信是一个老生常谈的话题,父级组件通过Prop向子组件传递数据,而子组件如...

  • Vue-Prop

    一、Prop的数据流 父子组件的关系:prop向下传递,事件向上传递。父组件通过prop给子组件下发数据,子组件通...

网友评论

      本文标题:vue 通过 prop 向子组件传递数据

      本文链接:https://www.haomeiwen.com/subject/gkmemctx.html