基于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 相关文章推荐
Colortip基于jquery的信息提示框插件在IE6下面的显示问题修正方法
Dec 06 Javascript
jQuery中append()方法用法实例
Dec 25 Javascript
javascript实现带节日和农历的日历特效
Feb 01 Javascript
js密码强度校验
Nov 10 Javascript
JS实现部分HTML固定页面顶部随屏滚动效果
Dec 24 Javascript
AngularJS入门教程之链接与图片模板详解
Aug 19 Javascript
js实现文字截断功能
Sep 14 Javascript
ES6新特性四:变量的解构赋值实例
Apr 21 Javascript
详谈Node.js之操作文件系统
Aug 29 Javascript
shiro授权的实现原理
Sep 21 Javascript
微信浏览器左上角返回按钮监听的实现
Mar 04 Javascript
JS实现选项卡插件的两种写法(jQuery和class)
Dec 30 jQuery
微信小程序以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 define()函数及defined()函数使用详解
2013/06/09 PHP
PHP5.5在windows安装使用memcached服务端的方法
2014/04/16 PHP
PHP数组游标实现对数组的各种操作详解
2016/01/26 PHP
php实现产品加入购物车功能(1)
2020/07/23 PHP
PHP ElasticSearch做搜索实例讲解
2020/02/05 PHP
Firebug入门指南(Firefox浏览器)
2010/08/21 Javascript
使用JS 清空File控件的路径值
2013/07/08 Javascript
javascript分页代码实例分享(js分页)
2013/12/13 Javascript
javascript简单实现图片预加载
2014/12/03 Javascript
移除AngularJS下URL中的#字符的方法
2015/06/19 Javascript
前端弹出对话框 js实现ajax交互
2016/09/09 Javascript
javascript判断元素存在和判断元素存在于实时的dom中的方法
2017/01/17 Javascript
node跨域请求方法小结
2017/08/25 Javascript
图片懒加载imgLazyLoading.js使用详解
2020/09/15 Javascript
React-native桥接Android原生开发详解
2018/01/17 Javascript
vue中引入第三方字体文件的方法示例
2018/12/17 Javascript
vue v-for 点击当前行,获取当前行数据及event当前事件对象的操作
2020/09/10 Javascript
微信小程序学习之自定义滚动弹窗
2020/12/20 Javascript
python tornado修改log输出方式
2019/11/18 Python
Python实现大数据收集至excel的思路详解
2020/01/03 Python
Python标准库shutil模块使用方法解析
2020/03/10 Python
Python猫眼电影最近上映的电影票房信息
2020/09/18 Python
在Python中字典按值排序的实现方法
2020/11/12 Python
python 通过exifread读取照片信息
2020/12/24 Python
html5中canvas学习笔记1-画板的尺寸与实际显示尺寸
2013/01/06 HTML / CSS
如何进行有效的自我评价
2013/09/27 职场文书
班主任寄语大全
2014/04/04 职场文书
文秘求职信范文
2014/04/10 职场文书
学校四群教育实施方案
2014/06/12 职场文书
优秀毕业生找工作自荐信
2014/06/23 职场文书
征用土地赔偿协议书
2014/09/26 职场文书
2014年数学教研组工作总结
2014/12/06 职场文书
2015年超市工作总结范文
2015/05/26 职场文书
金砖之国观后感
2015/06/11 职场文书
Sql-Server数据库单表查询 4.3实验课
2021/04/05 SQL Server
Golang 实现超大文件读取的两种方法
2021/04/27 Golang