index.ts 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129
  1. import AddressApi from '../../../../services/address'
  2. import checkauth from '../../../../utils/checkauth'
  3. import Navi from '../../../../utils/navi'
  4. // pages/mine/myaddr/list/index.ts
  5. Page({
  6. /**
  7. * 页面的初始数据
  8. */
  9. data: {
  10. id: -1,
  11. selectMode: false,
  12. addressList: [] as any[],
  13. wait: false,
  14. },
  15. behaviors: [checkauth],
  16. /**
  17. * 生命周期函数--监听页面加载
  18. */
  19. onLoad(query: { mode?: 'choose'; id?: number }) {
  20. let { mode = '', id = -1 } = query
  21. this.setData({
  22. selectMode: mode === 'choose' ? true : false,
  23. id: Number(id) > 0 ? Number(id) : -1,
  24. })
  25. },
  26. /**
  27. * 生命周期函数--监听页面初次渲染完成
  28. */
  29. onReady() {},
  30. /**
  31. * 生命周期函数--监听页面显示
  32. */
  33. onShow() {
  34. const self = this
  35. //@ts-ignore
  36. this.afterAuth(() => {
  37. self.init()
  38. })
  39. },
  40. /**
  41. * 生命周期函数--监听页面隐藏
  42. */
  43. onHide() {},
  44. /**
  45. * 生命周期函数--监听页面卸载
  46. */
  47. onUnload() {},
  48. /**
  49. * 页面相关事件处理函数--监听用户下拉动作
  50. */
  51. onPullDownRefresh() {},
  52. /**
  53. * 页面上拉触底事件的处理函数
  54. */
  55. onReachBottom() {},
  56. /**
  57. * 用户点击右上角分享
  58. */
  59. onShareAppMessage() {},
  60. init() {
  61. this.setData({
  62. wait: true,
  63. })
  64. AddressApi.GetPaged({})
  65. .then((rsp) => {
  66. if (rsp.result) {
  67. const addressList = rsp.result.items || []
  68. if (addressList.length > 0) {
  69. addressList.forEach((o) => {
  70. if (o.id === this.data.id) {
  71. o.checked = true
  72. }
  73. })
  74. }
  75. console.log(addressList)
  76. this.setData({
  77. addressList,
  78. wait: false,
  79. })
  80. }
  81. })
  82. .catch(() => {
  83. this.setData({
  84. wait: false,
  85. })
  86. })
  87. },
  88. addAddress() {
  89. Navi.navigateTo({
  90. url: '/pages/mine/myaddr/edit/index',
  91. })
  92. },
  93. editAddressHandle(e: WechatMiniprogram.CustomEvent<{ id: string }>) {
  94. wx.navigateTo({
  95. url: `/pages/mine/myaddr/edit/index?id=${e.detail.id}`,
  96. })
  97. },
  98. selectHandle(e: WechatMiniprogram.CustomEvent) {
  99. if (this.data.selectMode) {
  100. const pages = getCurrentPages() //获取小程序页面栈
  101. const beforePage = pages[pages.length - 2]
  102. wx.navigateBack({ delta: 1 })
  103. if (beforePage.userAddr) {
  104. beforePage.userAddr(e.detail)
  105. }
  106. console.log('trrr', beforePage.userAddr, e.detail)
  107. }
  108. },
  109. deleteAddressHandle(e: WechatMiniprogram.CustomEvent<{ id: string }>) {
  110. AddressApi.Delete({ id: e.detail.id }).then(() => {
  111. this.init()
  112. })
  113. },
  114. })