基于vue.js仿淘宝收货地址并设置默认地址的案例分析


Posted in Javascript onAugust 20, 2020

这个案例主要是渲染地址列表,然后设置默认地址,与淘宝的收货地址功能一样,具体自行查看自己的淘宝收货地址;

效果图:

基于vue.js仿淘宝收货地址并设置默认地址的案例分析

html结构

<!--the-address-->
<div class="the-address">
  <div class="adr-tent" id="vue-address">
    <table class="adr-table">
      <thead class="table-thead">
        <tr>
          <th rowspan="1" class="thh">
            <span class="tn">收货人</span>
          </th>
          <th rowspan="1" class="thh">
            <span class="tn">所在地区</span>
          </th>
          <th rowspan="1" class="thh">
            <span class="tn">详细地址</span>
          </th>
          <th rowspan="1" class="thh">
            <span class="tn">邮编</span>
          </th>
          <th rowspan="1" class="thh">
            <span class="tn">电话/手机</span>
          </th>
          <th rowspan="1" class="thh">
            <span class="tn">操作</span>
          </th>
          <th rowspan="1" class="thh">
            <span class="tn">设置</span>
          </th>
        </tr>
      </thead>
      <tbody class="table-tbody">
        <tr class="item" v-for="(v,i) in addressList">
          <td class="tdd">
            <span class="ti">
              <em class="tt">{{v.name}}</em>
            </span>
          </td>
          <td class="tdd">
            <span class="ti">
              <em class="tt">{{v.address}}</em>
            </span>
          </td>
          <td class="tdd">
            <span class="ti">
              <em class="tt">{{v.detailAddress}}</em>
            </span>
          </td>
          <td class="tdd">
            <span class="ti">
              <em class="tt">{{v.zipCode}}</em>
            </span>
          </td>
          <td class="tdd">
            <span class="ti">
              <em class="tt">{{v.phone}}</em>
            </span>
          </td>
          <td class="tdd">
            <span class="ti">
               <div class="handle">
                <a href="javascript:;" class="a-chg">修改</a>
                <i class="line">|</i>
                <em class="i-del">删除</em>
              </div>
            </span>
          </td>
          <td class="tdd">
            <span class="ti">
               <em class="set-def cur" v-if="v.isDefault">默认地址</em>
               <em class="set-def" v-else @click="setDefault(i)">设为默认</em>
            </span>
          </td>
        </tr>
      </tbody>
    </table>
  </div>
</div>

js功能

//地址管理
  const vueAddress = new Vue({
    el: '#vue-address',
    data(){
      return{
        addressList: [], //地址列表
      }
    },
    created(){
      this.getAddressJson();
    },
    methods:{
      //获取地址列表数据
      getAddressJson(){
        let url = 'json/addressTest.json';
        axios.get(url)
          .then(response =>{
            this.addressList = response.data.list;
          })
          .catch(error => {
            console.log(error)
          })
      },

      //设置默认地址
      setDefault(i){
        const addressList = this.addressList;
        addressList.forEach((item, index) => {
          item.isDefault = index == i;
        });
        addressList.splice(0, 0, ...addressList.splice(i, 1));
      }

    }
  });

如有发现问题,可留言哦~

具体案例,可访问本人github:https://github.com/xiexikang/vue-setDefaultAddress

总结

到此这篇关于基于vue.js仿淘宝收货地址并设置默认地址的案例分析的文章就介绍到这了,更多相关vuejs设置默认地址内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
javascript自启动函数的问题探讨
Oct 05 Javascript
ParseInt函数参数设置介绍
Jan 02 Javascript
浅谈 jQuery 事件源码定位问题
Jun 18 Javascript
javaScript中的原型解析【推荐】
May 05 Javascript
第六篇Bootstrap表格样式介绍
Jun 21 Javascript
Javascript 数组去重的方法(四种)详解及实例代码
Nov 24 Javascript
BootStrap Table 获取同行不同列元素的方法
Dec 19 Javascript
AngularJS1.X学习笔记2-数据绑定详解
Apr 01 Javascript
如何选择jQuery版本 1.x? 2.x? 3.x?
Apr 01 jQuery
Vue入门学习笔记【基本概念、对象、过滤器、指令等】
Apr 13 Javascript
Vue全局loading及错误提示的思路与实现
Aug 09 Javascript
javascript全局自定义鼠标右键菜单
Dec 08 Javascript
微信小程序以7天为周期连续签到7天功能效果的示例代码
Aug 20 #Javascript
微信小程序连续签到7天积分获得功能的示例代码
Aug 20 #Javascript
如何使用JavaScript实现无缝滚动自动播放轮播图效果
Aug 20 #Javascript
JavaScript 空间坐标的使用
Aug 19 #Javascript
vue插件--仿微信小程序showModel实现模态提示窗功能
Aug 19 #Javascript
jQuery实现评论模块
Aug 19 #jQuery
javaScript代码飘红报错看不懂?读完这篇文章再试试
Aug 19 #Javascript
You might like
PHP数组及条件,循环语句学习
2012/11/11 PHP
PHP的拦截器实例分析
2014/11/03 PHP
经典PHP加密解密函数Authcode()修复版代码
2015/04/05 PHP
php编程中echo用逗号和用点号连接的区别
2016/03/26 PHP
微信 getAccessToken方法详解及实例
2016/11/23 PHP
Laravel配合jwt使用的方法实例
2020/10/25 PHP
javascript事件模型代码
2007/07/01 Javascript
js 页面关闭前的出现提示的实现代码
2011/05/25 Javascript
JS设置获取cookies的方法
2014/01/26 Javascript
Jquery实现自定义tooltip示例代码
2014/02/12 Javascript
JS中判断null、undefined与NaN的方法
2014/03/26 Javascript
javascript模拟实现ajax加载框实例
2014/10/15 Javascript
Summernote实现图片上传功能的简单方法
2016/07/11 Javascript
Nodejs从有门道无门菜鸟起飞必看教程
2016/07/20 NodeJs
Node.js设置CORS跨域请求中多域名白名单的方法
2017/03/28 Javascript
Spring shiro + bootstrap + jquery.validate 实现登录、注册功能
2017/06/02 jQuery
基于$.ajax()方法从服务器获取json数据的几种方式总结
2018/01/31 Javascript
javascript判断一个变量是数组还是对象
2019/04/10 Javascript
修改Vue打包后的默认文件名操作
2020/08/12 Javascript
python实战教程之自动扫雷
2018/07/13 Python
Python爬虫之正则表达式的使用教程详解
2018/10/25 Python
Python属性和内建属性实例解析
2020/01/14 Python
Python 调用有道翻译接口实现翻译
2020/03/02 Python
浅谈python多线程和多线程变量共享问题介绍
2020/04/17 Python
python实现简单贪吃蛇游戏
2020/09/29 Python
CSS3教程:新增加的结构伪类
2009/04/02 HTML / CSS
英国休闲奢华的缩影:Crew Clothing
2019/05/05 全球购物
如何判断计算机可能已经中马
2013/03/22 面试题
2014新年元旦活动策划方案
2014/02/18 职场文书
租房合同协议书
2014/04/09 职场文书
2014年终个人工作总结
2014/11/07 职场文书
党员反腐倡廉学习心得体会
2015/08/15 职场文书
祝福语集锦:给百岁老人祝寿贺词
2019/11/19 职场文书
nginx结合openssl实现https的方法
2021/07/25 Servers
HTML页面中使两个div并排显示的实现
2022/05/15 HTML / CSS
关于windows server 2012 DC 环境 重启后蓝屏代码:0xc00002e2的问题
2022/05/25 Servers