小程序组件事件冒泡(小程序阻止事件冒泡)

网友投稿 2577 2022-12-28

本篇文章给大家谈谈小程序组件事件冒泡,以及小程序阻止事件冒泡对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。 今天给各位分享小程序组件事件冒泡的知识,其中也会对小程序阻止事件冒泡进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

微信小程序:冒泡事件与非冒泡事件

事件分为冒泡事件和非冒泡事件:

1.冒泡事件:当一个组件上的事件被触发后,该事件会向父节点传递。
2.非冒泡事件:当一个组件上的事件被触发后,该事件不会向父节点传递。

详情见 https://blog.csdn-/Jeremy__Lin/article/details/80629588

阻止mpvue小程序change事件冒泡

解决方法:给绑定change事件的元素或组件另外添加@click.stop指向一个空函数,用来阻止冒泡

注:此方法主要用于mpvue,@click.stop是vue中阻止点击事件冒泡的方法。如果是原生小程序应该为绑定change事件的元素或组件添加catchtap绑定一个空函数

这是在用mpvue开发小程序时遇到一个问题,项目需要引用小程序的picker选择器组件,发现在点击picker选择器触发其change事件时会触发picker选择器外层父元素的点击事件(项目需要实现对一个模块进行点击跳转,同时要求模块内的一个子元素有选择器功能)

开始通过查看vue文档和小程序文档,找到两种方法,分别是vue的.stop阻止冒泡和小程序的catch前缀,但通过测试发现给change事件直接添加.stop或者catch没有用

最后选用了网上搜到的一个折中的方法,给picker选择器另外添加一个点击事件(或者给选择器的父元素添加点击事件),为新加的点击事件添加阻止冒泡方法,使点击事件指向一个空函数。这样也就间接的解决了change事件冒泡的问题

如果大家还有更好的方法,欢迎留言

WeChat小程序基础篇-js事件

js负责页面与用户的交互小程序组件事件冒泡,动态修改页面的内容。使用js脚本来处理用户的操作。

操作解释: 点击button按钮(点小程序组件事件冒泡我),修改界面的msg显示为"BeiJing佩奇"

绑定事件: bindtap定义了"点击事件"

j s 函数: Page({定义函数对应bindtap})

例如开头示例一样小程序组件事件冒泡,组件绑定事件,js编写事件函数。

这里大概介绍下log打印的内容

☞ 小生不才,附上 博客地址 ☜

事件分为冒泡事件和非冒泡事件

1.冒泡事件:当一个组件被触发后,该事件以此向父节点传递。

2.非冒泡事件:当一个组件触发后,该事件不会向父节点传递。

解释小程序组件事件冒泡:当点击子节点时,会依次触发"bind事件2,bind事件1"

解释:当点击子节点时,只触发"bind事件2",而没有触发"bind事件1"

自基础班1.5.0起,触摸类事件支持捕获阶段。捕获阶段位于冒泡阶段之前。事件到达节点的顺序与冒泡相反。捕获事件采用的关键字为capture-bind、capture-catch,当然catch还是中断,取消冒泡阶段。

1. 示例1,执行顺序为hand2,hand4,hand3,hand1

2. 示例2,加入capture-catch捕获事件,只执行hand2

小程序view嵌套点击事件问题

在组件中绑定一个事件处理函数。
如bindtap,当用户点击该组件的时候会在该页面对应的Page中找到相应的事件处理函数
<view bindtap="view" <text bindtap="toast" class="journey"开启小程序之旅 </text </view
子元素触发父级元素也会触发若要只触发子元素使用catchtap代替bindtap
在相应的Page定义中写上相应的事件处理函数,参数是event。
Page({ toast: function (event) { // wx.navigateTo({ // url: '../redirect/redirect' // }); wx.redirectTo({ url: '../redirect/redirect', }); // view:function(event){ // // 父级元素 // } }, /** * 生命周期函数--监听页面隐藏/并未关闭返回 */ onHide: function (event) { console.log(event) }, /** * 生命周期函数--监听页面卸载/ */ onUnload: function () { console.log(222) }, })
事件分类
冒泡事件:当一个组件上的事件被触发后,该事件会向父节点传递。
非冒泡事件:当一个组件上的事件被触发后,该事件不会向父节点传递。
WXML的冒泡事件列表:
类型 触发条件 touchstart 手指触摸动作开始 touchmove 手指触摸后移动 touchcancel 手指触摸动作被打断,如来电提醒,弹窗 touchend 手指触摸动作结束 tap 手指触摸后马上离开 longtap 手指触摸后,超过350ms再离开
注:除上表之外的其他组件自定义事件如无特殊申明都是非冒泡事件,如<form/的submit事件,<input/的input事件,<scroll-view/的scroll事件,(详见各个组件官方文档)

小程序开发注意事项

1. 开发小程序时,每个页面一定要在app.json文件中注册,页面文件夹和其包含的四个文件的名字要保持一致。

2. 小程序发起的都是HTTPS网络请求,在开发调试的过程中可以不校验协议和TLS版本,但在实际上线后必须进行HTTPS协议通信。

3. 小程序可以进行组件化开发以及数据绑定,所有对于DOM的操作都是基于数据驱动的,并没有直接进行DOM操作的做法,换言之,小程序内没有document对象,原生js和jQuery里的DOM操作思维要舍弃掉。

4. 小程序的网络请求wx.request()是不自带Cookies的,这和浏览器上的网络请求不同,因此基于Cookies实现的会话管理不适用于小程序。

5. 小程序的脚本文件中,内置对象是page,而非传统浏览器里的window,因此所有基于window对象来写的库(例如jQuery)都不适用于小程序。

6. 小程序提供模板功能,模板拥有自己的作用域,它只能使用从data属性传入的数据。

7. 每一个页面文件夹下的.json文件是用来写配置项的,如果该页面无需添加相关配置,.json文件也要写上一对大括号(“{ }”),否则会报错。

8. 在同一个tab里的页面可以跳转,并且允许携带参数。不同tab的页面之间无法跳转,使用wx.navigateTo()接口会报错。同时,tab之间的跳转可以用wx.switchTab()实现,但是路径后不能带参数。

9. 脚本文件里data的数据,在更新的时候要通过this.setData()方法来更新,而不能直接用“=”来做。

10. 在组件标签里,可以通过“data-属性值”的方式绑定我们需要的数据,然后在事件内置event对象里进行获取。

11. 小程序里也存在事件的冒泡,具体的冒泡事件可以参考官方文档,如果希望事件向上冒泡,则使用bind来绑定事件,若希望阻止事件冒泡,就使用catch来进行事件绑定。

12. 小程序支持文件引用,有import和include两种方式,import有作用域,也就是引入的目标文件里import的模板不会被引入;而include等于是将目标文件除 以外的整个代码进行引入。

13. wx.login()和wx.getUserInfo()是两个独立的接口,前者可以实现用户登录,这个过程是悄无声息的,不需要用户授权,登录后可以拿到用户的openid和session_key;而wx.getUserInfo()可以拿到用户的具体信息,这个过程需要获得用户的授权,开发时也必须考虑用户拒绝授权的场景。

14. 目前小程序可以分享给微信好友和微信群,但小程序默认是没有这个功能的,只有在Page里定义了onShareAppMessage事件处理函数,点击小程序右上角才可以看到分享按钮。 关于小程序组件事件冒泡和小程序阻止事件冒泡的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。 小程序组件事件冒泡的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于小程序阻止事件冒泡、小程序组件事件冒泡的信息别忘了在本站进行查找喔。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:手机车载智能互联(手机智能汽车)
下一篇:比亚迪汽车小程序和app(比亚迪小程序平台)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~