基于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 相关文章推荐
又一个图片自动缩小的JS代码
Mar 10 Javascript
理解 JavaScript 预解析
Oct 25 Javascript
jquery 日期分离成年月日的代码
May 14 Javascript
将json当数据库一样操作的javascript lib
Oct 28 Javascript
用jQuery toggleClass 实现鼠标移上变色
May 14 Javascript
JavaScript实现动态创建CSS样式规则方案
Sep 06 Javascript
JS平滑无缝滚动效果的实现代码
May 06 Javascript
JS中跨页面调用变量和函数的方法(例如a.js 和 b.js中互相调用)
Nov 01 Javascript
禁用backspace网页回退功能的实现代码
Nov 15 Javascript
利用CSS、JavaScript及Ajax实现图片预加载的三大方法
Jan 22 Javascript
纯js实现页面返回顶部的动画(超简单)
Aug 10 Javascript
浅谈es6语法 (Proxy和Reflect的对比)
Oct 24 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实现多图片上传类实例
2014/07/26 PHP
PHP的关于变量和日期处理的一些面试题目整理
2015/08/10 PHP
PHP中串行化用法示例
2016/11/16 PHP
thinkphp5.1框架模板布局与模板继承用法分析
2019/07/19 PHP
在IE下获取object(ActiveX)的Param的代码
2009/09/15 Javascript
Extjs4 Treegrid 使用心得分享(经验篇)
2013/07/01 Javascript
js实现广告漂浮效果的小例子
2013/07/02 Javascript
jQuery解析Json实例详解
2015/11/24 Javascript
JS加载iFrame出现空白问题的解决办法
2016/05/13 Javascript
详谈Angular 2+ 的表单(一)之模板驱动型表单
2017/04/25 Javascript
js案例之鼠标跟随jquery版(实例讲解)
2017/07/21 jQuery
Vue 拦截器对token过期处理方法
2018/01/23 Javascript
JS中用EL表达式获取上下文参数值的方法
2018/03/28 Javascript
对mac下nodejs 更新到最新版本的最新方法(推荐)
2018/05/17 NodeJs
angularJs中$http获取后台数据的实例讲解
2018/08/08 Javascript
js纯前端实现腾讯cos文件上传功能的示例代码
2019/05/14 Javascript
Vue动态修改网页标题的方法及遇到问题
2019/06/09 Javascript
微信小程序拼接图片链接无底洞深入探究
2019/09/03 Javascript
vue中选中多个选项并且改变选中的样式的实例代码
2020/09/16 Javascript
[01:33]DOTA2上海特级锦标赛 LIQUID战队完整宣传片
2016/03/16 DOTA
python操作docx写入内容,并控制文本的字体颜色
2020/02/13 Python
python列表的逆序遍历实现
2020/04/20 Python
家用个人磨皮机:Trophy Skin
2017/03/30 全球购物
德国帽子专家:Hutshopping
2019/11/03 全球购物
OSPF有什么优点?为什么OSPF比RIP收敛快?
2013/02/13 面试题
技校毕业生自荐信范文
2014/03/07 职场文书
老人祝寿主持词
2014/03/28 职场文书
奥巴马的演讲稿
2014/05/15 职场文书
党员查摆问题及整改措施
2014/10/10 职场文书
思想作风建设心得体会
2014/10/22 职场文书
课外活动实习计划
2015/01/19 职场文书
小学五年级(说明文3篇)
2019/08/13 职场文书
初中运动会闭幕词范本3篇
2019/12/09 职场文书
SpringBoot整合JWT的入门指南
2021/06/29 Java/Android
PostgreSQL并行计算算法及参数强制并行度设置方法
2022/04/07 PostgreSQL
Nginx配置之禁止指定IP访问
2022/05/02 Servers