select-address.js 3.5 KB
// pages/select-address/select-address.js
let method = require("../../utils/reuqest.js")
const App = getApp();
Page({
  data: {
    iphone:'',     
    default: true,  //默认地址
    defaultType: '',
    list: [],
    exceedRange: true,
    exceedArray: [],
    edit:''   //判断是否是新增地址页面跳转
  },

  //获取地址列表
  getAddressList() {
    method.getRequest("/address", data => {
      if (data.statusCode == 0) {
        let lists=data.data;
        this.setData({
          list: lists.reverse()
        })
      }
    })
  },
  //选择地址
  selectAdd(e) {
    let id = e.currentTarget.dataset.id;
    let addIndex=e.currentTarget.dataset.index;
    wx.setStorageSync('addIndex', addIndex)
    if(!this.data.edit){
      wx.navigateBack({
        delta: 1,
      })
    }
   
  },
  // 默认地址
  defaultEvent(e) {
    let type = e.currentTarget.dataset.delflag == '0' ? '1' : '0';
    let id = e.currentTarget.dataset.id;
    method.getRequest("/address/setting/default/" + id + "/" + type, data => {
      if (data.statusCode == 0) {
        this.getAddressList();
      }
    })
  },
  //编辑地址
  editEvent(e) {
    let list = this.data.list;
    let id = e.currentTarget.dataset.id;
    let idx = e.currentTarget.dataset.index;
    list.forEach((item, index) => {
      if (index == idx) {
        method.getRequest("/address/edit/" + id, data => {
          if (data.statusCode == 0) {
            wx.setStorageSync('userInfo', data)
            wx.navigateTo({
              url: '/pages/edit-address/edit-address?name=' + item.name + '&phone=' + item.phone + '&area=' + item.area + '&address=' + item.address + '&delFlag=' + item.delFlag+"&id="+id+'&locations='+item.location
            })
          } else {
            wx.showToast({
              title: data.msg,
              icon: 'none'
            })
          }
        })
      }
    });
  },
  //删除地址
  delEvent(e) {
    let list = this.data.list;
    let id = e.currentTarget.dataset.id;
    let idx = e.currentTarget.dataset.index
    list.forEach((item, index) => {
      if (index == idx) {
        let obj = {
        }
        method.postRequest("/address/delete/" + id, obj, data => {
          if (data.statusCode == 0) {
            list.splice(index, 1)
            this.setData({
              list
            })
            wx.showToast({
              title: '删除成功',
              icon: 'success'
            })
          } else {
            wx.showToast({
              title: data.msg,
              icon: 'none'
            })
          }
        })
      }
    });
  },
  // 新增地址
  addAddress() {
    wx.navigateTo({
      url: '/pages/add-address/add-address',
    })
  },
  onLoad: function (options) {
    this.setData({
      edit:options.edit,
      iphone: App.globalData.isIphoneX
    })

    this.getAddressList();
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {
    this.getAddressList();
  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})