美文网首页
2018-09-23非父子之间的传值

2018-09-23非父子之间的传值

作者: 简单浪 | 来源:发表于2018-09-23 19:53 被阅读0次

生命周期:

周期图表

download.png

reated(创建后),

beforeMount(载入前),

mounted(载入后),

beforeUpdate(更新前),

updated(更新后),

beforeDestroy(销毁前),

destroyed(销毁后)

vue生命周期定义:

Vue实例有一个完整的生命周期,也就是从开始创建、初始化数据、编译模板、挂载Dom、渲染→更新→渲染、卸载等一系列过程,我们称这是Vue的生命周期。通俗说就是Vue实例从创建到销毁的过程,就是生命周期。

二非父子组件传值

(1):新建一个空的root组件:let Event=new Vue();
(2):发送数据的组件:Event.emit('a-fnName',data) 写在组件的methods里 (3):接收数据的组件:Event.on('a-fnName',(data)=>{}),注意函数格式必须写为箭头函数,不然this指向不是当前组件

两个独立的组件不能进行传输,需要借助第三方量;
在组件模板中不能同时存在两个以上的兄弟元素;
例:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
        <script src="js/vue.js"></script>
    </head>
    <body>
        <div id="app">
            <my-father></my-father>
            <my-sun></my-sun>
        </div>
        <script>
            var bus = new Vue()
            Vue.component("my-father",{
                template:`
                <button @click="send">发送</button>

                `,
                data:function(){
                    return{
                         list:"hello vue"
                    }

                },
                methods:{
                    send:function(){
                        bus.$emit("head",this.list)
                    }
                }
            })

            Vue.component("my-sun",{
                template:`
                <div>
                <h1>{{mag}}</h1>
                <h1>{{leta}}</h1>
                </div>
                `,
                data:function(){
                    return{
                        mag:"",
                        leta:"组件B"
                    }
                },
                mounted:function(){
                    bus.$on("head",list=>{
                        this.mag=list
                    })
                }
            })
            new Vue({
                el:"#app",
            })
        </script>
    </body>
</html>

相关文章

  • 2020-08-19 swift 传值的几个方式

    页面传值是指:父子页面之间、非父子页面之间、兄弟页面之间、非兄弟页面之间数据互通的方式,是为页面传值(个人见解) ...

  • 2018-09-22 vue初学8.1(非父子间的传值)

    非父子间的传值也可以理解为同级之间的传值 在非父子传值中主要声明了一个:var 变量 = new Vue(); ...

  • 2018-09-25组件

    组件分为:子传父父传子非父子之间的通信 1.子传父 2.父传子 3.非父子之间传值

  • 2018-09-23非父子之间的传值

    生命周期: 周期图表 reated(创建后), beforeMount(载入前), mounted(载入后), b...

  • 非父子组件之间的传值

    About 前面的一篇文章我们介绍了父子组件之间的传值可以通过props来实现,那么非父子组件之间如何传值呢? 一...

  • 组件通信

    vue传值可分为父子之间传值、兄弟组件之间传值、跨代组件之间传值 1.父子之间传值:可以使用$emit/props...

  • vue父子组件通信

    1.非父子之间传值 非父子之间传值用第三方 2.生命周期 每个Vue实例在被创建之前都要经过一系列的初始化过程,这...

  • 2018-09-23 js.vye 组件--续

    非父子传值 :非父子组件之间的通信,必须要有公共的实例(可以是空的),才能使用 $$emit 获取 $...

  • 与Vue.js的第八天

    今天学习了Vue组件中的非父子之间的传值和生命周期Vue组件之间的传值分三种1.父传子之间传值用属性:props2...

  • 组件 非父子之间传值

    非父子组件之间的通信

网友评论

      本文标题:2018-09-23非父子之间的传值

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