小程序踩坑记

一 react错误 Minified React error #185;

原因:render函数不能使用setState(),否则会导致页面死循环
摘录
上图摘自其他博主

二 有关Taro.showToast

如果只写title的话,最多只展示7个文字
如果再加 icon:‘none’ 此时 title 文本最多可显示两行
示例代码

既然提到taro了,再插一句:发现表单组件的Input 居然没有 onChange 事件

三 小程序记住账户密码功能

效果:用户一扫码登录,自动显示 账户 密码(小黑圈显示),类似QQ的记住密码。示例代码
实现:用户初次登录,拿到学号密码存入本地缓存(通过Taro.setStorage实现),此时生成用户的token,也存入本地缓存。
此后再登录,直接判断if(token)就可以,如果是真,直接页面跳转,否则显示弹窗。
那么如何实现记住账户密码呢?
代码如上,在react类组件的生命周期函数中setstate,值来源于本地缓存中的student—id 与 password 。在render函数中,input组件的value值(而不是placeholder)也设为student—id 与 password 。

四 对数组中不同类元素进行不同操作

实现:首先用map方法遍历数组,再进行if else判断是否同类,最后return,在页面上展示数据

array.map((item) => {
if(item.name==‘1’){
return()
}else{
return()
}
})

如上代码在jsx的render函数中
效果:类似QQ聊天框,name为1的人发送的消息显示在左边,气泡浅色;name不是1的人发送的消息显示在右边,气泡深色。

五 函数之间的传参

假设有a b两个函数,现在a函数return一个值为m,b函数想接收到这个m值
实现:function a(){
。。。。
return{
m
}
}

function b(){
var xx = this.a;
console.log(xx.m);
}
此时b函数输出的即为m值
示例代码

六 点击发送键,即可发送消息

实现:在constructor函数里面初始化state,声明一个数组msglist,此后每点击一次发送键,就利用一次数组的push方法

示例代码

注意:这里多加了一个copy,否则会报错,应该是内置原生js的性能,具体不清楚
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值