代码拉取完成,页面将自动刷新
Page({
data: {
delBtnWidth: 180,//滑动删除按钮宽度单位(rpx)
noCompleteData: [
{
title: '测试名称测试名称测试名测试名称测试名称测试名称测试名称称测试名称测试名称',
category: {
color: 'red',
category_name: '工作',
},
is_complete: 0,
create_time: '2022-07-24 00:00:00',
notice_time: '2022-07-24 00:00:00',
isComplete: false,
is_send_notice: 1,
txtStyle: '',
},
{
title: '测试名称1',
category: {
color: '#5ab58f',
category_name: '工作1',
},
is_complete: 0,
create_time: '2022-07-24 00:00:00',
notice_time: '2022-07-24 00:00:00',
isComplete: true,
is_send_notice: 1,
txtStyle: '',
}
]
},
onLoad: function () {
console.log('Welcome to Mini Code')
},
//滑动效果 2022.7.23
touchS: function (e) {
console.log('滑动', e)
if (e.touches.length == 1) {
this.setData({
//设置触摸起始点水平方向位置
startX: e.touches[0].clientX
});
}
},
touchM: function (e) {
if (e.touches.length == 1) {
//手指移动时水平方向位置
var moveX = e.touches[0].clientX;
//手指起始点位置与移动期间的差值
var disX = this.data.startX - moveX;
var delBtnWidth = this.data.delBtnWidth;
var txtStyle = "";
if (disX == 0 || disX < 0) {//如果移动距离小于等于0,文本层位置不变
txtStyle = "left:0px";
} else if (disX > 0) {//移动距离大于0,文本层left值等于手指移动距离
txtStyle = "left:-" + disX + "px";
if (disX >= delBtnWidth) {
//控制手指移动距离最大值为删除按钮的宽度
txtStyle = "left:-" + delBtnWidth + "px";
}
}
//获取手指触摸的是哪一项
var index = e.currentTarget.dataset.index;
var list = this.data.noCompleteData;
if (index >= 0) {
list[index].txtStyle = txtStyle;
//更新列表的状态
this.setData({
noCompleteData: list
});
}
}
},
touchE: function (e) {
console.log('滑动结束', e)
if (e.changedTouches.length == 1) {
//手指移动结束后水平位置
var endX = e.changedTouches[0].clientX;
//触摸开始与结束,手指移动的距离
var disX = this.data.startX - endX;
var delBtnWidth = this.data.delBtnWidth;
//如果距离小于删除按钮的1/2,不显示删除按钮
var txtStyle = disX > delBtnWidth / 2 ? "left:-" + delBtnWidth + "px" : "left:0px";
//获取手指触摸的是哪一项
var index = e.currentTarget.dataset.index;
var list = this.data.noCompleteData;
if (index >= 0) {
list[index].txtStyle = txtStyle;
list.forEach((e, k) => {
if (k != index) {
e.txtStyle = 'left:0px';
}
})
//更新列表的状态
this.setData({
noCompleteData: list
});
}
}
},
//获取元素自适应后的实际宽度
getEleWidth: function (w) {
var real = 0;
try {
var res = tt.getSystemInfoSync().windowWidth;
var scale = (750 / 2) / (w / 2);
//以宽度750px设计稿做宽度的自适应
real = Math.floor(res / scale);
return real;
} catch (e) {
return false;
// Do something when catch error
}
},
initEleWidth: function () {
var delBtnWidth = this.getEleWidth(this.data.delBtnWidth);
this.setData({
delBtnWidth: delBtnWidth
});
},
//修改待办内容 2022.7.23
async modifyTodo(e) {
console.log('点击了修改待办')
// this.editTodo(index, content_id);
},
//点击删除按钮事件
async delTodo(e) {
console.log('点击了删除待办', e)
//以下是删除逻辑
},
//滑动效果 2022.7.23
})
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。