昨天晚上,制定的计划。元月6日起,1每日vue听讲座60分钟,做随堂笔记,遇到作业交作业; 2进阶课程里,小程序课程每日听课60分钟,做随堂笔记,遇到作业交作业。 3 自己写的小程序量化问题点,解决不了网上搜索。这个计划对目标进行了量化。
今天,小程序听课多于60分钟,vue课程小于60分钟,两个加起来2个小时左右,这个可以接受。随堂笔记没做,感觉是一个耗精力的活,我心里想的是那种整理的笔记,要依据老师讲的内容,面面俱到而且自成体系。这样才能听课效果好,也做了一本复习资料。今天播放1.25倍速,接下来,把笔记补上。
明天继续执行此计划。
昨天,小程序获取用户信息总结 :
近一段时间,效率很低,计划没有做,只写那一个小程序,写一段不想写的时候,没去学习积攒了许多的其他知识。在担心的心情下发呆,时间一点点过去。经过反思有了上面的计划。
获取用户信息,我需要用户头像和昵称。我又新建了一个小程序,快捷生成框架,里面就有显示头像昵称的,然后我把他的wxhl wxss wxjs复制到我的小程序里,再逐个单词把它们嚼叭嚼吧。
首先,在data里,初始化userInfo : { }r空对象,hasUserInfo : false, 是否缓存里有用户信息,默认没有,canIUse : wx.canIUse('button.open-type.getUserInfo')授权方式 按钮的一个属性绑定的接口。
bindgetuserinfo = "getUserInfo‘’按钮的点击事件绑定。bindtap = "bindViewTap"什么意思,点击一下试试才知道,是快捷生成的时候图片绑定了一个跳转启动日志的事件,我的小程序不需要,把它删除了。
const app = getApp() 引入全局对象到本页面,常量 app 。wx:if条件渲染,!hasUserInfo && canIUse在没有用户信息,又需要授权的时候,用按钮渲染。
if(app.globalData.userInfo)如果全局对象里有用户信息this.setData()赋值给这个页面,userInfo : app.globalData.userInfo, hasUserInfo : true;否则看下面的条件this.data.canIuse 如果为true已经授权,进行网络请求。
由于getUserInfo是网络请求,可能会在Page.onLoad之后才返回,所以此处加入callback以防止这种情况app.userInfoReadyCallback =
res=>{ this.setData({this.setData({userInfo : res.userInfo, hasUserInfo : true))
生产环境 getUserInfo里的console.log(e)也不用打印,删除。
还有按钮里的bindgetuserinfo = "getUserInfo" 是对没有open-type的版本做的兼容。官方推出的代码还是很棒的。
网友评论