评论

组件事件监听的简述

调用的页面怎么出发组件的事件?四个步骤就可以

其实我自己也是半路出家,从没系统的学过小程序,文档更是没仔细读。遇到问题就查,看文档,看demo,完完全全一个新手。这两天用到组件,需要传递事件的时候看文档也没看明白。不过最后跌跌撞撞算是完成了。在这里记录下,分享给新手,大神请绕道,喷子且轻喷。

创建组件

在根目录下,创建一个components目录,用来放所有组件。
components目录下创建一个目录,这个就是你要新建的组件。
接着右键-> 新建Component,四个文件就直接给你创建好了

wxml 和 wxss 就不说了跟Page一样去写。

一般情况下我们都是要在自己的主页或者哪个Page下使用这个组件,有时候需要出发一些事件监听,看了很多Demo都没整明白,这里我试着尽量描述清楚,有不足的地方还请指正!

在 使用组件的页面 的 json 中,我们需要声明这个组件

然后在 使用组件的页面 的 wxml 中 使用这个组件

事件监听

组件部分

首先组件的wxml中要有一个bind监听,这里点击就会出发setText函数

然后组件的 js 中的setText函数要有this.triggerEvent()

这里组件的就差不多了。现在我们去别的页面调用

调用页面部分

首先你得使用这个组件吧,上面讲过了怎么创建和使用。
在wxml使用组件标签的时候,bind: + this.triggerEvent()传的字符串 + =“调用页面 js 中的函数”

然后你就可以在调用也的 js 的函数中去操作了

简单说就是四步

  1. 组件的wxml :绑定一个事件函数A
  2. 组件的 js :在事件函数A中 -> 写 this.triggerEvent(‘触发名B’)
  3. 调用页的wxml : 在组件标签上 -> bind: 触发名B=“调用页的事件函数C”
  4. 调用页的 js :事件函数C -> 爱干嘛干嘛

当然实际中可能不止这么简单,需要组件的数据在调用也中操作,这就要多加两个参数,可以看这里,这里就不赘述了。

我的理解是:组件跟调用页的关系大概就是组件的js提供数据,调用页的 js 操作数据。

The end

点赞 2
收藏
评论

1 个评论

  • 陈式坚
    陈式坚
    2019-03-01

    感谢分享 加油

    2019-03-01
    赞同
    回复 1
登录 后发表内容