基于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事件列表解说
Dec 22 Javascript
JQuery实现的在新窗口打开链接的方法小结
Apr 22 Javascript
jquery实现简单易懂的图片展示小例子
Nov 21 Javascript
JavaScript实现基于十进制的四舍五入实例
Jul 17 Javascript
js实现拖拽功能
Mar 01 Javascript
详解小程序原生使用ES7 async/await语法
Aug 06 Javascript
基于Vue2-Calendar改进的日历组件(含中文使用说明)
Apr 14 Javascript
详解jquery和vue对比
Apr 16 jQuery
JS实现从对象获取对象中单个键值的方法示例
Jun 05 Javascript
Layui弹出层 加载 做编辑页面的方法
Sep 16 Javascript
推荐几个不错的console调试技巧实现
Dec 20 Javascript
部署vue+Springboot前后端分离项目的步骤实现
May 31 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 session有效期session.gc_maxlifetime
2011/04/20 PHP
解析PHP中ob_start()函数的用法
2013/06/24 PHP
利用yahoo汇率接口实现实时汇率转换示例 汇率转换器
2014/01/14 PHP
PHP使用ob_start生成html页面的方法
2014/11/07 PHP
php字符串函数学习之substr()
2015/03/27 PHP
PHP简单获取网站百度搜索和搜狗搜索收录量的方法
2016/08/23 PHP
Javascript实例教程(19) 使用HoTMetal(4)
2006/12/23 Javascript
JS按回车键实现登录的方法
2014/08/25 Javascript
NodeJS学习笔记之MongoDB模块
2015/01/13 NodeJs
理解js回收机制通俗易懂版
2016/02/29 Javascript
jQuery实现点击按钮文字变成input框点击保存变成文字
2016/05/09 Javascript
如何用JavaScript实现动态修改CSS样式表
2016/05/20 Javascript
JS转换HTML转义符的方法
2016/08/24 Javascript
react 实现页面代码分割、按需加载的方法
2018/04/03 Javascript
JS实现的对象去重功能示例
2019/06/04 Javascript
详解vue 命名视图
2019/08/14 Javascript
小程序跨页面交互的作用与方法详解
2020/01/07 Javascript
python实现socket端口重定向示例
2014/02/10 Python
python3序列化与反序列化用法实例
2015/05/26 Python
Python 获取当前所在目录的方法详解
2017/08/02 Python
Python微信库:itchat的用法详解
2017/08/14 Python
Python序列化基础知识(json/pickle)
2017/10/19 Python
利用Python-iGraph如何绘制贴吧/微博的好友关系图详解
2017/11/02 Python
python3解析库BeautifulSoup4的安装配置与基本用法
2018/06/26 Python
python 去除txt文本中的空格、数字、特定字母等方法
2018/07/24 Python
Selenium的使用详解
2018/10/19 Python
用python打印1~20的整数实例讲解
2019/07/01 Python
python基于celery实现异步任务周期任务定时任务
2019/12/30 Python
Python操作MySQL数据库实例详解【安装、连接、增删改查等】
2020/01/17 Python
加拿大奢华时装品牌:Mackage
2018/01/10 全球购物
海滩咖啡馆:Beach Cafe
2018/02/02 全球购物
行政助理的职责
2013/11/14 职场文书
美术专业个人自我评价
2014/01/18 职场文书
品质主管岗位职责
2014/03/16 职场文书
运动会闭幕式通讯稿
2015/07/18 职场文书
《分数的意义》教学反思
2016/02/20 职场文书