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

@click没有效果?

@click没有效果?

胡子哥哥 2019-02-12 16:12:03
Vue.component('set-menu',{        template:'<ul><li v-for="item in ht" v-bind:data-id="item.id"><div @click="_click"><i class="s-font" v-bind:class="item.iconClass"></i>{{item.name}}</div><ul v-if="item.oth"><li v-for="items in item.oth"><i class="s-font" v-bind:class="items.iconClass"></i>{{items.name}}</li></ul></li></ul>',        data:function(){            var datas;            $.ajax({                type:"get",                url:"data.json",                async:false,                cache:false,                success:function(data){                    datas=data.sites;                }            });            console.log(datas)            return {ht:datas}        },        methods:{            _click:function(){                this.$emit('click',function(){                    alert(123)                })            }        }    })
查看完整描述

1 回答

?
慕尼黑8549860

TA贡献1818条经验 获得超11个赞

你可以好好看看你写的这个@click函数,他是触发了这个'set-menu'组件的click事件,并且把一个包含了alert操作的匿名函数当做了参数传给了'set-menu'组件的click事件方法,所以这个要看'set-menu' 上的是click事件怎么处理的,是不是运行了这个传递过去的匿名函数,
可以修改_click函数直接alert就好,不是出发set-menu的click事件就好了。
小建议:组件中的异步操作,最好还是放到生命周期函数里面执行

查看完整回答
反对 回复 2019-02-16
  • 1 回答
  • 0 关注
  • 751 浏览
慕课专栏
更多

添加回答

举报

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