小程序的数据绑定和事件绑定

小程序的数据绑定

1.需要渲染的数据放在index.js中的data里

复制代码
Page({
  data: {
    info:'HELLO WORLD',
    imgSrc:'/images/1.jpg',
    randomNum:Math.random()*10,
    randomNum1:Math.random().toFixed(2)
  },
})

2.在WXML中通过{{}}获取数据

复制代码
 <view>{{info}}</view>
 <image src="{{imgSrc}}" mode="widthFix"></image>
 <view>{{randomNum >= 5 ? '大于等于5' : '小于5'}}</view>
 <view>{{randomNum1 * 100}}</view>

小程序的事件绑定

什么是事件:渲染层到逻辑层的通讯方式,将用户在渲染层的行为传递到逻辑层

常见的事件

  • tap(触摸后离开)
  • input(文本框输入)
  • change(状态改变)

通过bind来绑定事件

复制代码
bindtap/bind:tap

事件对象的属性列表

事件回调触发时,会收到一个事件对象event,它的属性如下所示

|----------------|----------------------------|
| type | 事件类型 |
| timeStamp | 页面打开到触发事件所用的毫秒数 |
| target | 触发事件的组件的一些属性值集合(触发事件的源头组件) |
| currentTarget | 当前组件的一些属性值集合(正在触发事件的组件) |
| detail | 额外的信息 |
| touches | 触摸事件,当前停留在屏幕上触摸点信息的数组 |
| changedTouches | 触摸事件,当前变化的触摸点信息的数组 |

1.给组件绑定事件

复制代码
<button type="primary" bindtap="btnHandler">按钮</button>

2.点击组件触发的事件

复制代码
Page({ 
  btnHandler(e){
     console.log(e)
  }
})

3.查看绑定的效果

将事件绑定的数据进行渲染并且同步(vue的v-model事件)

1.创建一个共享的数据

复制代码
Page({ 
  data:{ 
    msg:"你好"
  }, 

}) 

2.将input组件绑定一个事件 syn并渲染数据

{{}} 获取数据

复制代码
<input value="{{msg}}" bindinput="syn"/>

3.在js中编写syn的事件,将数据进行同步

this.setData 给数据重新进行赋值

复制代码
Page({ 
  data:{ 
    msg:"你好"
  }, 
  syn(e){
   this.setData({
     msg: e.detail.value
   })
  }
})

相关推荐
tianxiaxue114 小时前
微信小程序如何跟企微互通
微信小程序·小程序·企业微信
Greg_Zhong14 小时前
微信小程序中canvas绘制面积图,解决手机和模拟器都能渲染不溢出问题
微信小程序·小程序canvas绘制面积图
Greg_Zhong2 天前
微信小程序中进度条总结
微信小程序·自定义进度条·slider进度条
这是个栗子3 天前
【微信小程序问题解决】删掉 “navigationStyle“: “custom“ 后仍触发了自定义导航栏
微信小程序·小程序·navigationstyle
liangdabiao3 天前
定制的乐高马赛克像素画生成器-微信小程序版本-AI 风格优化-一键完成所有工作
人工智能·微信小程序·小程序
编程小白gogogo3 天前
苍穹外卖微信小程序导入hbuilder后点击运行选择在微信开发者工具中打开,微信开发者工具打开却没有运行微信小程序解决办法
微信小程序·小程序
天籁晴空3 天前
微信小程序 静默登录 + 授权登录 双模式配合的设计方案
前端·微信小程序·uni-app
小徐_23333 天前
uni-app 组件库 Wot UI 2.0 发布了,我们带来了这些改变!
前端·微信小程序·uni-app
Greg_Zhong3 天前
微信小程序中实现自定义颜色选择器(简陋版对比精致版)
微信小程序·自定义颜色选择器面板
杰建云1674 天前
2026年第三方平台制作微信小程序多少钱?
微信小程序·小程序·小程序制作