1.微信数据绑定基本组件进阶解读,记得使用{{}}列表,使用wx:for,同时设置wx:key。否则,编辑器总是有红色警告。条件,使用wx:if、wx:else或wx:elif模板不建议大量使用,因为不能使用自己的样式事件,强行记录哪些冒泡事件和非冒泡事件。使用组件时要特别注意此类事件,尤其是组件中的组件。import,import=导入模板文件,include=复制文件源码,@import导入样式文件wxss,理解并使用rpx替换px2。自定义组件的使用a可以将自定义组件的使用场景抽象出来,复用成组件。例如:共享组件、Tab组件、Panel组件等。b***组件使用示例,支持服务器发送分享按钮文字和分享内容******share.js***Component({/***组件属性列表*/properties:{text:{type:String,value:'Sharetofriends'}},/***组件初始数据*/data:{},/***组件方法列表*/methods:{onTapButton(e){this.triggerEvent('tapbutton',{e})}}})***share.wxml***{{text}}***share.wxss***@import'../../static/wxss/common.wxss';.button{背景:线性渐变(#AEAEF9,#9ED1FA);盒子阴影:1rpx1rpx1rpx1rpx#C28230;位置:固定;对齐内容:居中;底部:30rpx;宽度:30%;高度:60rpx;边界半径:30rpx;字体大小:30rpx;保证金:035%;白颜色;封装brequestapi***使用***//获取金币收益列表varRequest=require('request.js')functiongetIncome(page=1、success){varurl=Common.API+'/User/MyIncome/'+pageRequest.Get(url,success)}***request.js***functionGet(url,success,err=errhandle,header=HEADER){ShowLoading()returnwx.request({url:url,success:function(res){//console.log('geturl',res)wx.hideLoading()if(res.statusCode!=200){err(res.data)return}success(res.data.data)},header:header})}functionPost(url,data,success,err=errhandle,header=HEADER){wx.hideLoading()returnwx.request({url:url,data:data,method:'POST',success:function(res){wx.hideLoading()if(res.statusCode!=200){err(res.data)返回}success(res.data.data)},header:header})}module.exports={Get:Get,Post:Post}c共享组件见本文5.生命周期分析onLoad:初始化数据,包括:获取页面来自服务器的数据onReachBottom:可用于加载列表的下一页onShareAppMessage:设置页面共享数据。如果不设置该方法,则页面不支持分享。6、如何发送模板消息a小程序需要做什么在小程序部分,必须使用form获取form_id,与其他数据一起发送给服务器。b如何操作后台在小程序后台申请模板消息,并以form_id发送消息。***PHP代码示例,使用lavavel框架,easywechat组件***publicstaticfunctionSendTpl($uid,$coin,$formId,$page='pages/index/index'){$find=User::查找($uid);if($find){$data=['touser'=>$find->openid,'template_id'=>'Bg7IEAsOqXhFsjkcu3Wdz7Im6HTbBYIdgq_T9EnfcSY','page'=>$page,'form_id'=>$formId,'data'=>['keyword1'=>'您存入了一枚金币','keyword2'=>$coin.'金币','keyword3'=>'哇~金币真多~~去商店看看,可以兑换好东西~']];$miniprogram=EasyWeChat::miniProgram();$miniprogram->template_message->send($data);}}7。巧妙方案a使用snippet代码的技巧b和后端安全认证8.遇到一些坑a定义在tabbar页面,wx.navigateTo不能用,应该用wx.switchTabb小程序外如何带参数?以及如何获取参数?pages/index/index?pid=12带参数的页面后直接获取参数:onLoad:function(options){if(options.pid){this.apprentice(options.pid)}}c在组件中的列表场景中,点击按钮,如何带上选中的行参数?**js组件的方法列表**方法:{onTapButton(e){vardetail=e.detail.target.dataset.detaildetail["formId"]=e.detail.formId?e.detail.formId:''console.log('tapbutton',e,detail)this.triggerEvent('tapbutton',{detail:detail,event:e})//,formId:formId}}***wxml***0?false:true}}"formType="submit">{{item.lotery>0?'兑换':'补货'}}***页面使用***bindExchange(e){app.aldstat.sendEvent('mall-commodity-'+e.detail.detail.title);wx.navigateTo({url:'../exchange/exchange'})}d自定义组件,如果组件中的样式需要使用公共样式,需要单独导入