VUE: 移动端长按弹出确认删除地址

  收货地址的删除方式可能有很多种,我目前见过的暂时只有两种(1、在编辑页删除  2、长按某一条收货地址弹出是否删除地址)

在开发的项目上要求第二种删除方法,于是记录一下我写的代码 ~

  1.首先,在移动端,手指点击一个元素,会经过:touchstart --> touchmove --> touchend -->click。

在temlate里面写长按事件(@touchstart.prevent:触摸开始 touchend.prevent:触摸结束,手指离开时)

<ul>
    <li v-for="(item,idx) in addressList" :key="idx"  @touchstart.prevent="touchin(item)"  @touchend.prevent="cleartime(item)">
      <div>
        <p class="name">{{item.nickname}} <span>{{item.tel}}</span> </p>
        <div class="addrInfo">
            <span class="span">{{item.areaId}}</span><span>{{item.address}}</span>
        </div>
      <p class="edit" @click="add(item)">编辑</p>
    </li></ul>

  2.data里面的数据(为了方便给大家展示,写的是死数据)

data () {
      return {
        addressList: [
            {nickname:‘齐一‘,  tel:15065124120, areaId: ‘某某省某某市某某区‘, address: ‘123路几座几号楼502‘},
            {nickname:‘齐一‘,  tel:15065124120, areaId: ‘某某省某某市某某区‘, address: ‘123路几座几号楼502‘}
        ]
    }
}                    

  3.1用js写方法(我这里引入了一个mint-ui的确认是否删除的弹窗  import { MessageBox } from ‘mint-ui‘)

methods: {
      /*
      * 长按显示删除地址
      */
      touchin (item) {
        console.log(item)
        // 再次清空定时器,防止重复注册定时器
        clearInterval(this.loop)
        this.Loop = setTimeout(function () {
          MessageBox.confirm(‘确认删除吗?‘).then(res => {
                this.addressList.splice(item, 1)
          }).catch(() => {
          })
        }.bind(this), 1000)
      },
      /*
      *  将每次手指移出之后将计时器清零
      */
      cleartime (idx) {
        clearInterval(this.Loop)
      }
    }

  3.2.这是我接好后台接口时候的数据,方便我自己看,你们看上面那个然后自己套数据就好了(当然不套自己项目的数据也是能实现功能的~)

methods: {/*
      * 长按显示删除地址
      */
      touchin (item) {
        console.log(item)
        // 再次清空定时器,防止重复注册定时器
        clearInterval(this.loop)
        this.Loop = setTimeout(function () {
          MessageBox.confirm(‘确认删除吗?‘).then(res => {
            let _formData = {
              cusmallToken: getStore(‘cusmallToken‘),
              addressId: item.id
            }
            commonDkApiFun(_formData, ‘/ttmb/api/member/delAddress‘).then(res => {
              if (res.data.ret === 0) {
                this.addressList.splice(item, 1)
              }
            }).catch(err => {
              console.log(err)
            })
          }).catch(() => {
          })
        }.bind(this), 1000)
      },
      /*
      *  将每次手指移出之后将计时器清零
      */
      cleartime (idx) {
        clearInterval(this.Loop)
      }
    }

原文地址:https://www.cnblogs.com/Awen71815iou/p/11401915.html

时间: 2024-10-06 15:05:33

VUE: 移动端长按弹出确认删除地址的相关文章

点击删除是弹出确认删除对话框

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="zh-cn"> <head> <met

UIWebView禁用长按弹出copy选择框

本文参考http://bbs.9ria.com/thread-227539-1-1.html  感谢hbnana大神 第一种加载html文件 再webview的加载完成的代理方法中添加一下代码 //禁止长按弹出图片的地址等 [self.webView stringByEvaluatingJavaScriptFromString:@"document.body.style.webkitTouchCallout='none';"]; //禁止长按复制 [self.webView strin

[转]js中confirm实现执行操作前弹出确认框的方法

原文地址:http://www.jb51.net/article/56986.htm 本文实例讲述了js中confirm实现执行操作前弹出确认框的方法.分享给大家供大家参考.具体实现方法如下: 现在在删除或其它操作前弹出确定提示,我们有很多方法,最基本的就是利用js自带的函数confirm来操作了 最简单的用法如下: 鼠标事件使用confirm 复制代码 代码如下: <a href="#" onclick= "if(confirm( '是否确定! ')==false)r

Android ListView两种长按弹出菜单方式

* 知识点1:ListView item:两种长按弹出菜单方式* 知识点2:ListView SimpleAdapter的使用*  知识点 3:在java代码中创建一个ListView*/ -----------------------------------------------------Activity[mw_shl_code=java,true]package org.gxl.com; public class ListOnLongClickActivity extends Activ

javaScript 删除事件 弹出确认 取消对话框

1 javaScript 删除事件 弹出确认 取消对话框 2 1. 3 4 <a href="javascript:if(confirm('确实要删除?'))location='http://www.baidu.com'">删除</a> 5 6 2. 7 8 <script language="JavaScript"> 9 function delete_confirm(e) 10 { 11 if (event.srcElemen

C# GridView Edit &amp; Delete, 点击Delete的时候弹出确认框

1. 使用GridView自带属性ShowEditButton和ShowDeleteButton,均设为True  <Columns> ... <asp:CommandField ShowEditButton="True" ShowDeleteButton="True"></asp:CommandField> </Columns> 则在GridView指定列的位置会显示Edit和Delete的LinkButton 2.

移动端 软键盘 弹出时 影响布局

移动端 软键盘 弹出时 会影响布局 1)前段时间作的移动端页面,因为高度只有1页所以用了height:100%;width:100%; ios下点击输入框弹出软键盘时,布局没有大影响. 当输入框可能被软键盘压到时,在一部分安卓下却出了问题,华为自带浏览器和UC会有布局上的问题. 原因可能是因为,软键盘弹出时,改变了height,使height:100%,不能达到原来的高度. 解决办法: $(document).ready(function () { $('body').height($('bod

js在关闭页面前弹出确认提示【转载】

最近项目中出现个bug,就是导出数据后,会提示确认导航,其实实际需求并不需要这个提示,可能是之前遗留的问题.查了下资料是在触发了onbeforeunload事件,那么剩下的就是代码组织问题了. 众所周知,现在的主流浏览器基本上都是多标签页的.在标签页数量较多的时候,可能连标签页的标题都无法看清.因此,用户可能一不小心就关错了标签 页,或者直接点击浏览器右上角的关闭按钮一不小心就关闭了所有标签页,而用户之前访问我们站点的某个页面可能还有非常重要的数据没有保存... 因此,在某些重要数据的录入页面,

UIWebView长按弹出菜单显示英文解决办法

UIWebView加载网页后,长按弹出菜单,显示如下英文菜单样式: 在Info.plist中添加CFBundleLocalizations字段,并增加zh_CN元素,即可将上述菜单显示为中文. UIWebView长按弹出菜单显示英文解决办法