您的位置:首页 > 科技 > IT业 > 北京注册公司地址_正规企业网站开发使用方法_怎样做品牌推广_百度成都总部

北京注册公司地址_正规企业网站开发使用方法_怎样做品牌推广_百度成都总部

2024/11/17 4:33:58 来源:https://blog.csdn.net/qq_45569925/article/details/142760430  浏览:    关键词:北京注册公司地址_正规企业网站开发使用方法_怎样做品牌推广_百度成都总部
北京注册公司地址_正规企业网站开发使用方法_怎样做品牌推广_百度成都总部

效果展示

效果描述

长按【大于1s】某一条对话框会弹出一个对话框,点击确定按钮就可以将当前对话框从列表中进行删除,如果点击取消则不做额外操作。

如果只是点击了一下,时间【小于1s】的情况下会直接引入到与该用户的对话框详情页面。

代码实现

渲染层代码

      <view v-for="(item,index) in dialogList" :key="index" class="m-item" @touchstart="touchstart(item)"@touchend="touchend(item)"><view class="mi-left"><image :src="userId==item.msgSendId? item.msgRevHeadImg:item.msgSendHeadImg" mode="aspectFill"></image><view class="mil-num" v-if="item.readNum!=0">{{item.readNum>99?'99+':item.readNum}}</view></view><view class="mi-right"><view class="mir-top"><text class="mirt-name danhang">{{item.msgSendName}}</text><text style="color: rgba(16,16,16,0.7);">{{formatTime(item.createTime)}}</text></view><text class="danhang">{{formatType(item.textType,item)}}</text></view></view>

逻辑层代码

  let seconds = ref(0); // 用于跟踪经过的秒数let timeoutId = null; // 存储 setTimeout 的 IDlet hasShownDeleteDialog = false; // 标记是否已弹出删除对话框const touchstart = (item) => {seconds.value = 0; // 重置秒数hasShownDeleteDialog = false; // 重置标记timeoutId = setTimeout(() => {showDeleteDialog(item);}, 1000);};const touchend = (item) => {clearTimeout(timeoutId); // 清除 setTimeoutif (!hasShownDeleteDialog) {handleDetail(item);}seconds.value = 0; // 重置秒数};const showDeleteDialog = (item) => {hasShownDeleteDialog = true; // 设置标记为已弹出删除对话框clearInterval(timeoutId); // 清除 setTimeoutuni.showModal({title: `删除对话框`,content: `你确定要删除与【${item.msgSendName}】的对话框吗,删除后将无法恢复!!!`,success: function(res) {if (res.confirm) {console.log('用户点击确定', item);http.post(api.removeChatRecord, { revUserId: item.msgRevId, sendUserId: item.msgSendId }).then(res => {getDialogList();uni.showToast({icon: "none",title: "删除成功"})});} else if (res.cancel) {console.log('用户点击取消');}}});};

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com