美文网首页
wepy 获取不到事件对象

wepy 获取不到事件对象

作者: 殊小陌 | 来源:发表于2019-05-20 16:01 被阅读0次

最近在写小程序,有一个功能是,点击头像查看大图,用微信 previewImage实现。


image.png

最开始思路,用参数传递图片url,如

<img src="{{url}}" @tap="previewImg(url)" />

但是由于后台返回的url实在不友好,类似于

detail.images[0].image_url

由于数组的存在,导致错误。其实只有一张图片,非要这么传,我也很无奈,所以只能换另外一种方式。即dataset。

使用dataset就必须使用”事件对象event“获取数据。最开始是这样写的:

  <image
     class="avatar"
     mode="aspect-Fill"
     src="{{detail.images[0].image_url}}"
     data-url="{{detail.images[0].image_url}}"
    @tap="previewImg()"
 />

事件处理函数是这样的:

    previewImg(e) {
      let url = e.currentTarget.dataset.url
      let urls = []
      urls.push(url)
      wx.previewImage({
        current: url,
        urls: urls
      })
    }

怎么都获取不到e对象,报”Cannot read property 'dataset' of undefined“。网上也没有找到可行的办法。最终费了九牛二虎之力,终于知道,原来是绑定事件时不应该用圆括号。如下(重点@tap="previewImg"):

<image
      class="avatar"
      mode="aspect-Fill"
      src="{{detail.images[0].image_url}}"
      data-url="{{detail.images[0].image_url}}"
      @tap="previewImg"
/>

问题解决!

相关文章

  • wepy 获取不到事件对象

    最近在写小程序,有一个功能是,点击头像查看大图,用微信 previewImage实现。 最开始思路,用参数传递图片...

  • wepy中组件之间通信方法

    events events是WePY组件事件处理函数对象,存放响应组件之间通过emit、$invoke所传递的事件...

  • JavaScript(二)

    JavaScript对象 事件对象 type获取事件类型,显示事件为点击事件click target 获取事件目标...

  • 兼容

    事件绑定 移除事件 阻止事件冒泡 取消事件的默认行为 获取事件target 获取event对象 获取clientW...

  • wepy获取wepy实例

    1、在页面中获取let appInstance = this.$parent (github)[https://g...

  • 第七课 js事件

    event事件对象 1、什么是event事件对象? 用来获取事件的详细信息:鼠标位置、键盘按键 ——例子:获取鼠标...

  • js事件

    event事件对象 1、什么是event事件对象? 用来获取事件的详细信息:鼠标位置、键盘按键 ——例子:获取鼠标...

  • 获取事件对象

    // 函数组件 function HelloFn () { // 定义事件回调函数 const clickHa...

  • javascript 实战基础

    1、查找搜索选择器 - 获取对象DOM 2、查找搜索选择器 - 获取对象DOM 注册事件 绑定事件行内注册事件 b...

  • 事件相关

    事件相关功能函数,使用直接调取即可;事件绑定 事件解绑 获取事件对象 获取事件目标元素 阻止默认事件---->注意...

网友评论

      本文标题:wepy 获取不到事件对象

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