address.vue 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. <template>
  2. <div class="logistics-wrapper">
  3. <div class="logistics-content" id="logisticsContent">
  4. <address-view ref="addressView" v-show="!isEdit" :isSend="isSend" @isEditEvent="editClick"></address-view>
  5. <address-edit v-show="isEdit" :data="setData" :isPersonal="isPersonal" :isSend="isSend" @isEditEvent="editClick"></address-edit>
  6. </div>
  7. </div>
  8. </template>
  9. <script type="text/javascript">
  10. import { AddressView, AddressEdit } from '~components/mobile/base'
  11. export default {
  12. name: 'NoSendAddress',
  13. layout: 'mobile',
  14. middleware: 'authenticated',
  15. fetch({store}) {
  16. return Promise.all([
  17. store.dispatch('mobileAddress/loadAddressData', {count: 10, page: 1, isSend: false, sorting: { 'num': 'ASC' }})
  18. ])
  19. },
  20. components: {
  21. AddressView,
  22. AddressEdit
  23. },
  24. data () {
  25. return {
  26. isEdit: false,
  27. setData: {}
  28. }
  29. },
  30. computed: {
  31. isSend () {
  32. return false
  33. },
  34. isPersonal () {
  35. return true
  36. }
  37. },
  38. methods: {
  39. editClick (item, type) {
  40. this.isEdit = type
  41. if (item) {
  42. this.setData = item
  43. }
  44. if (type === false) {
  45. this.$refs.addressView.initList()
  46. }
  47. }
  48. }
  49. }
  50. </script>
  51. <style lang="scss" scoped>
  52. @mixin Fixed() {
  53. position: fixed;
  54. bottom: 0.98rem;
  55. left: 0;
  56. right: 0;
  57. top: 1.26rem;
  58. }
  59. .logistics-wrapper {
  60. @include Fixed();
  61. z-index: 111;
  62. background: #f1f3f6;
  63. .logistics-content {
  64. overflow-y: scroll;
  65. height: calc(100vh - 1.26rem)
  66. }
  67. }
  68. </style>