微信小程序开发入门与实战(数据监听)

简介: 微信小程序开发入门与实战(数据监听)

数据、方法和属性


1、 data 数据


组件模板渲染的私有数据如 👇

/***组件的方法列表*/methods: {
addCount(){
this.setData({
count:this.data.count+1        })
this._TiShi()
    },
_TiShi(){
wx.showToast({
title: 'count是'+this.data.count        })    
    }
},

2、methods 方法


在小程序组件中,事件处理函数和自定义方法需要定义到 methods 节点中,

示例代码如 👇

/***组件的方法列表*/methods: {
addCount(){
this.setData({
count:this.data.count+1        })
this._TiShi()
    },
_TiShi(){
wx.showToast({
title: 'count是'+this.data.count        })    
    }
},

3、properties 属性


在小程序组件中,properties 是组件的对外属性,用来接收外界传递到组件中的数据。

示例代码如 👇

WXML<text1max="5"></text1>//默认值是15这里设置最大值为5,覆盖了最大值COMPONENT<view>添加的值为:{{count}}</view><buttonbindtap="addCount">点击按钮</button>JS/***组件的属性列表*/properties: {
max:{
type:Number,
value:15    }
},
/***组件的方法列表*/methods: {
addCount(){
if(this.data.count>=this.properties.max) return;
this.setData({
count:this.data.count+1        })
this._TiShi()
    },
//提示框_TiShi(){
wx.showToast({
title: 'count是'+this.data.count        })    
    }
},

4、 data 和 properties 的区别


在小程序的组件中,properties 属性和 data 数据的用法相同,它们都是可读可写的 区别如 👇

  1. data 更倾向于存储组件的私有数据
  2. properties 更倾向于存储外界传递到组件中的数据

测试两者是否相等如 👇

/***组件的属性列表*/properties: {
max:{
type:Number,
value:15    }
},
/***组件的初始数据*/data: {
count:1},
proData(){
console.log(this.data.max);
console.log(this.data.count);
console.log(this.data===this.properties);
}

5、使用 setData 修改 properties 的值


由于 data 数据和 properties 属性在本质上没有任何区别,因此 properties 属性的值也可以用于页面渲染,或使用 setData 为 properties 中的属性重新赋值

示例代码如 👇

properties: {
max:{
type:Number,
value:15  }
},
methods: {
addCount(){
if(this.data.count>=this.properties.max) return;
this.setData({
count:this.data.count+1,
max:this.properties.max+1      })
  },
}

数据监听器


1、什么是数据监听器

数据监听器用于监听和响应任何属性和数据字段的变化,从而执行特定的操作。它的作用类似于 vue 中的watch 侦听器。在小程序组件中

数据监听器的基本语法格式如 👇

'字段A''字段B':function(A值,B值){
}

2、监听对象属性的变化

数据监听器支持监听对象中单个或多个属性的变化

代码实习

WXML-------------<viewclass="ColorBox"style="background-color: rgb({{funllColor}});">颜色的值为:{{funllColor}}</view><buttonsize="mini"bindtap="RValue"type="default">R</button><buttonsize="mini"bindtap="GValue"type="primary">G</button><buttonsize="mini"bindtap="BValue"type="warn">B</button><view>颜色的RGB值为:{{rgbValue.r}}-{{rgbValue.g}}-{{rgbValue.b}}
</view>WXSS-------------<viewclass="ColorBox"style="background-color: rgb({{funllColor}});">颜色的值为:{{funllColor}}</view><buttonsize="mini"bindtap="RValue"type="default">R</button><buttonsize="mini"bindtap="GValue"type="primary">G</button><buttonsize="mini"bindtap="BValue"type="warn">B</button><view>颜色的RGB值为:{{rgbValue.r}}-{{rgbValue.g}}-{{rgbValue.b}}
</view>WXJS-------------//components/text1/text1.jsComponent({
/***组件的属性列表*/properties: {
  },
/***组件的初始数据*/data: {
rgbValue:{
r:0,
g:0,
b:0      },
funllColor:'0,0,0'  },
observers:{
"rgbValue.r, rgbValue.g,rgbValue.b":function(r,g,b){
this.setData({
funllColor:`${r},${g},${b}`
      })
    }
  },
/***组件的方法列表*/methods: {
RValue(){
this.setData({
"rgbValue.r":this.data.rgbValue.g+5>255?255: this.data.rgbValue.r+5      })
  },
GValue(){
this.setData({
"rgbValue.g":this.data.rgbValue.g+5>255?255: this.data.rgbValue.g+5    })
  },
BValue(){
this.setData({
"rgbValue.b":this.data.rgbValue.b+5>255?255: this.data.rgbValue.b+5    })
  },
  }
})

如 👇

4.gif

最后


image.png

下篇文章再见ヾ( ̄▽ ̄)ByeBye

image.png

相关文章
|
4天前
|
小程序 前端开发 物联网
无人桌球室小程序平台系统定制开发方案
【项目摘要】随着社会进步和科技发展,无人桌球室小程序应运而生,解决传统桌球室管理难题。提供在线预订、自动计分、赛事查询及会员管理功能,采用微信小程序前端、微服务后端及物联网智能设备技术实现。市场推广结合社交媒体、线下活动及口碑营销。需开发支持,请联系小编。
|
5天前
|
小程序 BI 定位技术
广州跑腿小程序功能开发让生活更方便
跑腿小程序整合生活服务,提供快捷的跑腿任务解决方案。用户通过手机号或微信注册登录,发布如取快递、买饭等需求;跑腿员接单并利用导航高效完成。支持订单管理、多种支付方式及评价反馈系统,确保服务质量。小程序还发送订单状态通知,进行数据统计分析以促进平台发展。
|
4天前
|
小程序 安全 数据安全/隐私保护
理发店预约小程序开发:随时随地,省时省力
理发店预约小程序开发要点:集成预约系统,用户填写信息并自动匹配时间及理发师;包含充值功能,支持安全支付及多种折扣;用户评价系统确保服务质量透明;发型展示帮助用户选择,支持模拟试戴;重视用户体验,界面友好,加载速度快;确保数据安全,兼容多平台,定期更新以优化性能和响应用户需求。寻求开发合作可联系相关人员。
|
4天前
|
人工智能 小程序 搜索推荐
餐饮类小程序开发定制需要多少钱,费用是怎样的
餐饮小程序开发费用因需求、规模和复杂性而异。基础版约几千到万元,含菜品展示、在线点餐等功能;界面设计费几千到几万;服务器租赁年费几千到几万;维护更新费同水平。总成本通常在几万到几十万之间。选择开发商时要考虑实际需求、合同条款及付款方式。
|
5天前
|
小程序 定位技术
货拉拉货运小程序开发:构建便捷可靠的货运平台
货拉拉货运小程序整合物流服务,用户可录入货物详情、使用地图定位跟踪运输状态;订单管理功能便于查看进度和费用;支持多种支付方式及支付记录查询;评价系统提升服务质量;客服支持确保用户疑问得到解答,打造移动物流新时代。
|
10天前
|
小程序 开发者
uniapp实战 —— 开发微信小程序的调试技巧
uniapp实战 —— 开发微信小程序的调试技巧
14 1
|
4天前
|
小程序
美团买菜小程序平台开发:搭建便捷的线上买菜渠道
随着时代的发展和人们生活水平的提高,网上购物已经成为更多人的首选。在此背景下,类似美团买菜小程序平台开发应运而生,为消费者提供方便快捷的网上购物体验。下面我们将详细讲解美团买菜小程序平台开发的功能特点和优势。
|
5天前
|
小程序 安全 UED
百果园社区电商小程序开发:打造私域精准营销发展趋势
百果园借助社区电商小程序转型,拓展线上渠道,增强品牌形象,降低运营成本,适应市场变化。小程序提供实时购物、社群互动、商家入驻及优惠活动,强调用户体验、功能丰富性和安全性,成为品牌与消费者连接的新桥梁。
|
5天前
|
小程序 安全 搜索推荐
陪玩交友互动小程序开发:打造有趣的社交互动平台
【陪玩交友小程序】融合趣味与实用,打造安全社交新平台。用户经实名认证后,可享在线匹配、语音聊天、游戏组队等多元互动。智能推荐系统助你高效找到玩伴,共享游戏攻略与娱乐资讯。个性化推荐服务,让每一次交流都充满乐趣,邀请好友共赴精彩社交之旅。
|
10天前
|
小程序 定位技术 API
uniapp 开发微信小程序 --【地图】打开地图选择位置,打开地图显示位置(可开启导航)
uniapp 开发微信小程序 --【地图】打开地图选择位置,打开地图显示位置(可开启导航)
37 0