初学微信小程序,嗯,还不错嘛,挺有趣的! 于是自己动手撸了一个
会自动生成一些基本文件:
"pages":[ "pages/index/index", "pages/detail/detail" ],效果预览: 项目功能:
* 首页插入一组图片,并实现跳转
因为是要插入一组图片,所以我们可以用wx:for={{}}来实现
js配置 //事件处理函数 bindViewTap: function(e) { console.log(e.currentTarget.id) var id = e.currentTarget.id wx.navigateTo({ url: '../detail/detail?id='+ id }) },2. scroll-view的使用,可滚动视图区域生成
在需要设置滚动区域,用scroll-view标签把内容包住
js配置 handleUpper: function (event) { console.log("handleUpper"); },handleLower: function (event) { console.log("handleLower"); }, 3. 视频播放,video组件使用(这是我踩过的坑!) HTML结构
js配置 onReady: function (res) { this.videoContext = wx.createVideoContext('item.id') }, videoErrorCallback: function(e) { console.log('视频错误信息:') console.log(e.detail.errMsg) }, bindButtonTap:function(){ var that = this; wx.chooseVideo({ sourceType:['album','camera'], maxDuration:60, camera:['front','back'], success:function(res){ that.setData({ src:res.api_url }) } }) }, }) 4. 发表评论(最大的坑!)
包括 :
js配置 comment:[], bindInput:function(e){ var that=this; var value= e.detail.value; console.log(value); that.setData({ content:value }) }, 获取数据及交互反馈: content:"", issue:function(){ var that=this ; var arr=new Array(); if(this.data.content===""){ wx.showModal({ title: '提示', content: '请填写评论', success: function(res) { if (res.confirm) { console.log('用户点击确定') } else if (res.cancel) { console.log('用户点击取消') } } }) }else{ arr.push({ nickName:this.data.nickName, avatarUrl:this.data.avatarUrl, time:util.formatTime(new Date()), desc:this.data.content }) this.setData({ comment:this.data.comment.concat(arr), content:"" }) console.log(this.data.comment) console.log(this.data.nickName) setTimeout (function(){ wx.showToast({ title: '评论成功', icon: 'success', duration: 2000 }) },1000) } },
动态获取评论时间 module.exports = { formatTime: formatTime } 5. 获取用户信息: HTML结构
js结构 var that = this wx.getUserInfo({ success: function(res) { var userInfo = res.userInfo var nickName = userInfo.nickName var avatarUrl = userInfo.avatarUrl that.setData({ nickName:nickName, avatarUrl:avatarUrl }) } }) 6. 用mock传递数据 var id=options.id; //调用应用实例的方法获取全局数据 var api_url='https://www.easy-mock.com/mock/5966410258618039284c745b/list/list'; console.log(api_url); wx.request({ url: api_url, method:'GET', success: function(res) { var info = res.data.data[id]; that.setData({ hidden: true, videoInfo: info }) } }) 坑...
1.由第一个页面中传递过来的数据不在是一个数组,而是一个对象,得到其id就得到其内容。 |