van-button 点击事件不生效

来源:11-7 书架状态 API + 加入书架 API 对接

weixin_慕勒327452

2019-08-28

图片描述
老师 van-button 在组件内部的点击事件都打印不出来 触发不了点击事件 我再最外层的div也加了点击事件测试 也无法生效

写回答

7回答

Sam

2019-08-30

你好,需要将我的微信号加入你的开发者列表,微信号是:xiaomudushu,不然无法调试你的代码

0
3
Sam
回复
weixin_慕勒327452
好的,我马上看下
2019-09-02
共3条回复

Sam

2019-09-04

hi,问题已经解决了,这个问题是 mpvue 的 BUG,我跟踪了点击事件的源码 handleProxyWithVue,发现我们自定义组件的事件丢失了,点击事件触发正常,但是事件丢失了,核心代码如下:

var attrs = data.attrs; // 获取事件 id
var on = data.on; // 事件实际存储位置,这里返回的是 undefined
if (attrs && on && attrs['eventid'] === eventid) {
  eventTypes.forEach(function (et) {
    var h = on[et];
    if (typeof h === 'function') {
      res.push(h);
    } else if (Array.isArray(h)) {
      res = res.concat(h);
    }
  });
  return res
}

如上,事件绑定在 data.on 属性中,这里事件丢失,导致事件无法响应,解决的方法是将 DetailBottom.vue 组件中的内容直接写到 detail.vue 中即可


1
1
律政先锋_张大炮
除了这个方法还有别的方法吗,视频中不是可以吗?
2020-03-27
共1条回复

Sam

2019-09-02

我调试了一下你的源码,发现 van-button 绑定的事件没有问题,如果你那边还有问题,可以详细描述下你的问题,抱歉回晚了,最近比较忙

0
1
weixin_慕勒327452
老师你要把detail.vue里面的DetailStat和DetailRate组件的注释打开才会点不上
2019-09-03
共1条回复

weixin_慕勒327452

提问者

2019-08-28

但是把注释一打开就点不了

0
0

weixin_慕勒327452

提问者

2019-08-28

我把DetailRate这个评分插件注释掉了 底部就可以点击了

0
0

weixin_慕勒327452

提问者

2019-08-28

重启了 重新打包了都不行

0
0

Sam

2019-08-28

先重启下项目试试

0
6
慕婉清3442332
回复
Sam
老师我也遇到了一模一样的问题 求解决哦 学完了这个我还要买老师的后台vue node的教程
2019-12-23
共6条回复

零基础入门 实战mpvue2.0多端小程序框架

mpvue,一套代码搞定多个平台小程序,前端更易上手

819 学习 · 647 问题

查看课程