vue 组件间传值案例 两人对话

效果图:

未点击:
QQ截图20180922100902.png

点击后:
QQ截图20180922100942.png

body:

<div id="app">
   <my-father></my-father>
</div>

js:

<script>
    Vue.component('my-father',{
        template:
        `       <div>
                    <ul>
                        <li v-for='(value,index) in arrs'>{{value}}</li>
                    </ul>
                    <my-child @send='sent' userName='jack'></my-child>
                    <my-child @send='sent' userName='rosc'></my-child>
                </div>
        `,
        data:function(){
            return{
                arrs:[]
            }
        },
        methods:{
            sent:function(text){
                this.arrs.push(text)
            }
        }
    })
    
    Vue.component('my-child',{
        props:['userName'],
        template:
        `
            <div>
                <span>{{userName}}</span>
                <input type='text' v-model='mess'><button @click='add'>添加</button>
            </div>
        `,
        data:function(){
            return{
                mess:''
            }
        },
        methods:{
            add:function(){
                this.$emit('send',this.userName+':'+this.mess)
            }
        }
    })
    new Vue({
        el:'#app'
    })
</script>
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 文//PUYA婷婷 来生 我愿做一株草 在方寸的土地上独自成长 不惧雾雨雷电 不畏烈日雾霾 不向身旁的岩石低头 不...
    PUYA婷婷阅读 218评论 0 2
  • 微商行业到底如何?大家对此说法不一。但是,我们必须承认的一点是,微商是信息技术发展下催生的新的商业形式。而且正照着...
    womemkeyi阅读 204评论 0 0
  • “你是说把所有东西都劈成两半?”她面露疑惑之色。 “对啊,就是从你的眼光平视出去形成的那一个平面,所有的东西都自动...
    Wanderbook阅读 226评论 3 0