<view class="page"> <view id="main"> <view id="list"> <view wx:for="{{list}}" wx:for-index="idx" wx:for-item="item" class="list_item"> <view> <view class="po-avt-wrap"> <image class="po-avt data-avt" src="{{item.avatarUrl}}" ></image> </view> <view class="po-cmt"> <view class="po-hd"> <view class="po-name"><text class="data-name">{{item.nickName}}</text></view> <view class="post"> <view>{{item.content}}</view> <view> <image wx:for="{{item.img}}" bindtap="previeimg" wx:for-item="res" class="list-img" data-name="{{idx}}" id="{{res}}" src="{{res}}" style="height: 80px;"></image> </view> </view> <view class="time">{{item.time}}</view><image class="c-icon" id="{{idx}}" src="/img/c.png" bindtap="seecomment"></image> </view> <view class="r" wx:if="{{item.comments}}"></view> <view class="cmt-wrap"> <view class="cmt-list"> <view wx:for="{{item.comments}}" bindtap="seecomment" id="{{idx}}" data-name="{{comment.nickName}}" wx:for-item="comment" hover-class="comment_hover" style="color:#000;"> <text>{{comment.nickName}}<text style="color:#000;margin:0px 2px;" wx:if="{{comment.reply}}">回复</text>{{comment.reply}}:</text>{{comment.content}} </view> </view> </view> </view> </view> </view> </view> </view> <view class="add" bindtap="add"> <image src="/img/adddy.png"></image> </view> <view class="comment" wx:if="{{seecomment}}"> <input bindconfirm="comment" bindblur="hidecomment" placeholder="{{reply}}" focus auto-height="true" fixed="true" cursor-spacing="10" confirm-type="done"/> </view> </view> |
#list,#list li,.po-hd,.post { overflow: hidden } .po-cmt,.post .list-img:nth-child(1),.time { float: left } #list li,.cmt-wrap,.r,.time { clear: both } #avt,#user-name { position: absolute } #bg { width: 100% } #user-name { text-align: right; right: 114px; bottom: 15px; color: #fff; font-weight: 700; font-size: 15px; text-shadow: 0 1px .5px #000 } #share a,.btn { font-size: 14px } .btn,b { font-weight: 400 } #share a,#share p,.btn { text-align: center } #avt { width: 74px; height: 74px; border: 1px solid #dbdbdb; right: 15px; bottom: -22px; padding: 1px; background-color: #fff } #list li,.po-hd { position: relative } #list li { line-height: 1.5; border-bottom: 1px solid #e2e2e2; margin-top: 15px; padding-bottom: 15px } #share a:nth-child(2),.ads,.po-avt { position: absolute } .ads { color: #999; right: 5px; top: 0 } .post view{color:#000} .ads img { width: 10px; padding-left: 8px } .ad-link { color: #3b5384 } .post .ad-link img { width: 11px; padding: 0; display: inline-block } .po-avt-wrap { padding-left: 10px } .po-avt { width: 40px; height: 40px; top: 0; left: 10px } .r { border-bottom: 8px solid #eee; border-left: 8px solid transparent; border-right: 8px solid transparent; width: 1px; margin-top: 5px; margin-left: 10px } .po-cmt { padding-left: 60px; padding-right: 10px; width: 100%; box-sizing: border-box } .po-name { color: #576b95 } .post { color: #252525; padding-bottom: 10px } .post image { padding: 10px 5px 0 0; display: block; max-height: 130px; max-width: 130px } .post .list-img { width: 30%; max-height: 80px; max-width: 80px; padding-right: 5px; float: left; object-fit: cover } .post .list-img:last-child { padding-right: 0 } .time { color: #b1b1b1; font-size: .7rem; } .c-icon { width: 20px; height: 14px; float: right } .cmt-wrap { width: 100%; background-color: #eee } .like { color: #576b95; padding: 5px 5px 3px 12px } .like image { width: 12px; padding-right: 5px } .cmt-list { color: #454545 } .cmt-list view { padding-top: 3px; border-bottom: 1px solid #eee; padding: 5px 12px; } .cmt-list text { color: #3b5384 } .list_item{margin:10px 0px;border-bottom:1px solid #eee;overflow:hidden;padding:10px 0px;position:relative} .add{position: fixed;bottom: 30px;right:30px;} .add image{width: 80rpx;height: 80rpx;} .comment{position: fixed;bottom:0;z-index:100000;background:#f5f5f5;width:100%;} .comment input{width:90%;margin:5px 5%;background: #fff;border:1px solid #eee;padding:10rpx;} .comment_hover{background:#eee;} |
var app = getApp(); var util = require('../../utils/util.js'); var page = 1; Page({ data:{ seecomment:false, reply:'' }, add:function(){ wx.navigateTo({ url: '/pages/dynamic/add' }) }, previeimg:function(e){ var that = this; console.log(e); wx.previewImage({ current: e.currentTarget.id, urls: that.data.list[e.currentTarget.dataset.name].img }) }, getList:function(){ var that = this; util.req('dynamic/getlist',{page:page},function(data){ var list = data.list; if (page == 1) { var arr = new Array(); }else{ var arr = that.data.list; } list.forEach(function(item){ var li = { avatarUrl:item.avatarUrl, content:item.content, id:item.id, img:JSON.parse(item.img), nickName:item.nickName, time:util.getDateBiff(item.time*1000), zan:item.zan, comments: item.comment } arr.push(li); }) that.setData({list:arr}); }) }, onShow:function(options){ this.getList(); }, onReachBottom:function(){ if(!this.data.nomore){ page++; this.getList(); } }, seecomment:function(e){ console.log(e); var reply = (!e.target.dataset.name)?'':'回复'+e.target.dataset.name; this.setData({ 'reply':reply, 'seecomment':true, 'nowid':e.currentTarget.id }); }, comment:function(e){ var that = this; var content = e.detail.value; if(content == ''){ return false; } util.req('comment/add',{ 'iid':that.data.list[that.data.nowid].id, 'reply':(that.data.reply).replace('回复',''), 'type':'dynamic', 'content':e.detail.value, 'sk':app.globalData.sk },function(data){ if(data.status == 1){ var list = that.data.list; list[that.data.nowid].comments = (list[that.data.nowid].comments) ? list[that.data.nowid].comments:(new Array()); list[that.data.nowid].comments.unshift({id: data.id, iid: that.data.list[that.data.nowid].id, content: e.detail.value, nickName: app.globalData.userInfo.nickName,reply:(that.data.reply).replace('回复','')}) } that.setData({list:list}); }) }, hidecomment:function(){ this.setData({'seecomment':false}); }, onPullDownRefresh: function(){ page = 1; this.getList(); wx.stopPullDownRefresh(); } }) |
模板简介:该模板名称为【微信小程序消息评论动态样式教程下载】,大小是,文档格式为.,推荐使用打开,作品中的图片,文字等数据均可修改,图片请在作品中选中图片替换即可,文字修改直接点击文字修改即可,您也可以新增或修改作品中的内容,该模板来自用户分享,如有侵权行为请联系网站客服处理。欢迎来懒人模板【小程序教程】栏目查找您需要的精美模板。