当前位置: 首页 > news >正文

做那种的视频网站网站建设捌金手指花总六

做那种的视频网站,网站建设捌金手指花总六,国外广告设计网站,北海市网站建设文章目录 1.什么是事件传参2.data-*方式传参3.mark自定义数据 1.什么是事件传参 事件传参:在触发事件时,将一些数据作为参数传递给事件处理函数的过程,就是事件传参 在微信小程序中,我们经常会在组件上添加一些自定义数据,然后在…

文章目录

  • 1.什么是事件传参
  • 2.data-*方式传参
  • 3.mark自定义数据

1.什么是事件传参

事件传参:在触发事件时,将一些数据作为参数传递给事件处理函数的过程,就是事件传参

在微信小程序中,我们经常会在组件上添加一些自定义数据,然后在事件处理函数中获取这些自定义数据,从而完成业务逻辑的开发.

2.data-*方式传参

在组件上 通过 data-*“的方式 定义需要传递的数据,其中*是自定义的属性,例如:<view data-id=“100"bindtap="handler”/>然后通过事件对象进行获取自定义数据

示例:

wxml:

<button bindtap="btuHandler" data-id="1" data-name="zhangsan">事件传参</button>

.js:

Page({btuHandler(e){console.log(e);},
})

结果:
在这里插入图片描述
可以看到有两个地方出现了我们要传递的参数

  • currentTarget: 事件绑定者,也就是指:哪个组件绑定了当前事件处理函数
  • target: 事件触发者,也就是指:哪个组件触发了当前事件处理函数

因为事件绑定者和事件触发者都是同一个组件,因此通过currentTargettarget都能获取到我们传递的数据.

一般来说,搞清楚时间绑定者和事件触发者,就能够正确获取数据了.实在不行还可以直接打印事件对象,进行数据的查看

有点地方需要注意一下,如果要传递的数据的变量名也带-:

例如:

<button bindtap="btuHandler" data-user-id="1" data-userName="zhangsan">事件传参</button>

注意这里的ata-user-id="1" data-user-name="zhangsan"
在这里插入图片描述
⭐user-id变成了userId(小驼峰),userName变成了username(全小写). 这点需要注意

3.mark自定义数据

小程序进行事件传参的时候,除了使用data-*属性传递参数外,还可以 使用 mark 标记传递参数
mark 是一种自定义属性,可以在组件上添加,用于来识别具体触发事件的 target 节点。同时 mark 还可以用于承载一些自定义数据

然后通过事件对象进行获取自定义数据,在组件上使用 mark:自定义属性 的方式将数据传递给事件处理函数,例如:<view mark:id=“100"bindtap="handler" />

示例:

wxml:

<button mark:userid = "1" mark:userName = "zhangsan" bind:tap="markHandler">mark传参</button> 

注意使用mark不能使用user-id(变量名-变量名)的格式传递数据

js:

Page({markHandler(e){console.log(e);console.log(e.mark.userid);console.log(e.mark.userName);},
})

运行结果:
在这里插入图片描述
另外使用mark方式通过事件对象获取到的是 触发事件的节点 已经 父节点身上所有的 mark 数据

示例:

wxml:

<view mark:parentid = "2" mark:parentName = "lisi" bind:tap="parentHandler"><button mark:userid = "1" mark:userName = "zhangsan" bind:tap="markHandler">mark传参</button> 
</view>

wcss:

view{display: flex;height: 200rpx;background-color: aqua;align-items: center;
}

js:

Page({markHandler(e){console.log(e);},parentHandler(e){console.log(e);},
})

界面如下:
在这里插入图片描述
首先点击蓝色区域,mark数据只有父组件的数据
在这里插入图片描述
点击按钮,可以看到父组件和子组件的数据,同时父组件和子组件的绑定事件方法触发了两次
在这里插入图片描述

markdata-*很相似,主要区别在于

  • mark 包含从触发事件的节点到根节点上所有的 mark:属性值
  • currentTarget.dataset 或者 target.dataset 只包含事件绑定者 或者 事件触发者那一个节点的 data-*值
http://www.yayakq.cn/news/448694/

相关文章:

  • 网站建设课程设计文献综述网店营销策划方案ppt
  • c 网站开发框架有淘宝客 wordpress 主题
  • 如何把做好的网站代码变成网页效果图网站排行榜前十名
  • 用nas建设服务器网站上市公司数据查询网站
  • 湖州网站设计公司网站商城支付宝开通怎么做
  • 网站栏目建设需求的通知网页版梦幻西游金色什么伙伴比较好
  • 怎样做企业文化网站余姚网站建设的公司
  • 福建省建设厅网站劳保核定卡三种网络营销方式
  • 一个高端的网站设计专业网站建设搭建
  • 校园网站服务建设做视频网站技术壁垒在哪里
  • 黄页88网站推广怎么样博罗做网站公司
  • 宝塔如何搭建网站wordpress js插件
  • 新乡网站建设方案苏州市网站建设公司
  • 个人业务网站建设网站后台路径
  • 有哪些网站可以做设计挣钱廊坊网站推广外包
  • 网站 功能建设上 不足深圳小程序开发
  • 可视化域名网站模块被删了什么叫H5网站开发
  • 河北固安县网站建设广州制作网站公司哪家好
  • 作业网站建设方案wordpress 和 shopify
  • 石家庄企业网站建设百度seo优化软件
  • 外贸建站seo优化搭建影视网站违法
  • 影楼网站源码php遵义本地网站
  • 兰州市城乡建设局网官网站阿里云服务器上做淘宝客网站
  • 哪个网站可以做分期wordpress 微博页面
  • 做一个网站首页多少钱.net建设网站步骤详解
  • 技能网站建设项目需求wordpress翻译插件
  • 网站开发学院做室内设计的网站有哪些
  • 网站建设图标合集英文外贸网站建设
  • 做伞的外国网站js制作网页计算器
  • 网站建设销售实训报告泉州建站方案