为了账号安全,请及时绑定邮箱和手机立即绑定

在vue中如何对父子组件拆分成非父子组件并实现通信

在vue中如何对父子组件拆分成非父子组件并实现通信

HUX布斯 2019-03-18 16:19:54
<!DOCTYPE html><html><head>    <meta charset="UTF-8">    <title></title>    <script src="js/vue.min.js"></script></head><body>    <div id="itany">        <ul class="form-ul">            <li class="form-item">                <h4 class="form-title">邮件主题</h4>                <ele-input v-on:name="handleList"></ele-input>                <!-- <my-input :value="item" @input="val => {item = val}"></my-input>-->                <i class="icon pen"></i>            </li>        </ul>        <ul class="form-ul">            <li class="form-item" v-for="(v,k) in Arr" :key="k">                {{v}}            </li>        </ul>    </div><script>    Vue.component(        'eleInput',{                template: '<input type="text"  @input="pushArr" v-model="name" >\                ',                data: function(){                        return{                            name:""                        }                    },                methods:{                    pushArr: function () {                        this.$emit('name',{item:this.name});                    }                }            }    )    var vm=new Vue({        el:"#itany",        data:function(){            return{                Arr:[],                Arrpost:['大华','小华', 'alex', 'mark']            };        },        methods:{            handleList: function (payload) {                var temp=[];                this.Arrpost.forEach(                        function(val){                            if(val.indexOf(payload.item)!=-1&&(payload.item!="")){                                temp.push(val);                            }                        }                );                this.Arr=temp;            }        }    })</script></body></html>请把上面的代码中 <li class="form-item" v-for="(v,k) in Arr" :key="k">{{v}}</li>拆成另外个组件,并实现和ele-input组件的通信,参考官方文档https://cn.vuejs.org/v2/guide/components.html#非父子组件通信
查看完整描述

2 回答

?
12345678_0001

TA贡献1802条经验 获得超5个赞

先把 li 抽成组件 这个应该不难
第二部 组件通信 
1 li组件中$emit一个事件
2 父组件 on接受事件 触发父组件中的方法
3 父组件触发的方法中改变传给ele-input组件的数据
这个是我的思路,也不知道可不可行

查看完整回答
反对 回复 2019-03-29
  • 2 回答
  • 0 关注
  • 381 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信