微信小程序实现左滑修改、删除功能
本文实例为大家分享了微信小程序实现左滑修改、删除的具体代码,供大家参考,具体内容如下
wxml:
{{item.title}}党建项目报价表 {{item.create_time}} 
wxss:
.offer-item{
height:150rpx;
width:100vw;
overflow-x:hidden;
border-bottom:1pxsolid#f0f0f0;
}
.offer-item>view{
position:absolute;
/*width:calc(100%+200rpx);*/
height:150rpx;
}
.offer-item.offer-item-top{
height:100%;
}
.offer-item.offer-item-topnavigator{
display:inline-block;
width:100vw;
height:100%;
}
.offer-item.content{
padding:35rpx30rpx;
position:relative;
height:calc(100%-70rpx);
}
.offer-item.title.fl{
display:inline-block;
width:78%;
overflow:hidden;
text-overflow:ellipsis;
white-space:nowrap;
font-size:30rpx;
color:#333;
}
.offer-item.title.fr{
display:inline-block;
width:20rpx;
height:26rpx;
margin-top:5rpx;
}
.offer-item.note{
position:absolute;
left:30rpx;
bottom:35rpx;
width:calc(100vw-60rpx);
font-size:24rpx;
color:#999;
}
.offer-item.posit{
width:200rpx;
height:150rpx;
line-height:150rpx;
text-align:center;
display:none
}
.posit.isMove{
display:inline-block;
position:absolute;
}
.posit.isMove[hidden]{
display:none
}
.offer-item.posit>view{
display:inline-block;
width:100rpx;
}
.offer-item.posit>view:first-of-type{
background-color:#FED847;
}
.offer-item.posit>view:last-of-type{
background-color:#C71B1B;
}
.offer-item.positimage{
display:inline-block;
width:36rpx;
height:36rpx;
}
js:
letlen=0;//初次加载长度
lethadLastPage=false;//判断是否到最后一页
varinitdata=function(that){
varlist=that.data.offerList
for(vari=0;i0){//移动距离大于0,文本层left值等于手指移动距离
txtStyle="left:-"+disX+"px";
if(disX>=delBtnWidth){
//控制手指移动距离最大值为删除按钮的宽度
txtStyle="left:-"+delBtnWidth+"px";
}
}
//获取手指触摸的是哪一个item
varindex=e.currentTarget.dataset.index;
varlist=that.data.offerList;
//将拼接好的样式设置到当前item中
list[index].txtStyle=txtStyle;
list[index].isMove=true;
//更新列表的状态
this.setData({
offerList:list
});
}
},
touchE:function(e){
console.log(e);
varthat=this
if(e.changedTouches.length==1){
//手指移动结束后触摸点位置的X坐标
varendX=e.changedTouches[0].clientX;
//触摸开始与结束,手指移动的距离
vardisX=that.data.startX-endX;
vardelBtnWidth=that.data.delBtnWidth;
//如果距离小于删除按钮的1/2,不显示删除按钮
vartxtStyle=disX>delBtnWidth/2?"left:-"+delBtnWidth+"px":"left:0px";
//获取手指触摸的是哪一项
varindex=e.currentTarget.dataset.index;
varlist=that.data.offerList;
list[index].txtStyle=txtStyle;
//更新列表的状态
that.setData({
offerList:list
});
}
},
/**
*
*/
navigatorTo:function(event){
},
/**
*删除操作
*/
del:function(e){
varthat=this;
vardata={
id:e.currentTarget.dataset.index
};
wx.showModal({
title:'',
content:'确定选择删除么?',
confirmColor:'#C71B1B',
cancelColor:'#666666',
success:function(res){
if(res.confirm){
utils.requestFun("接口url",data,'POST',function(msg){
console.log(msg)
wx.showToast({
title:'删除成功',
icon:'success',
duration:1500
})
varlists=that.data.offerList;
varlist1=[];
for(leti=0;i
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
  