vehicleSeries.vue 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131
  1. <template>
  2. <view>
  3. <view class="list" v-for="(item,index) in displacementList" :key="index">
  4. <view class="list__item" @click="choice(item,index)">
  5. <text class="list__item__user-name">{{item.modelYear}}</text>
  6. </view>
  7. <u-line></u-line>
  8. </view>
  9. <u-popup :show="annualStyle" @close="annualStyle = false" mode="right" :closeable="true">
  10. <view style="padding-top: 10rpx;width: 650rpx;">
  11. <swiper class="box-c" style="height: 100vh;">
  12. <swiper-item class="child">
  13. <scroll-view :scroll-y="true">
  14. <view class="list" v-for="(item,index) in annualStyleList" :key="index">
  15. <view class="list__item" @click="vehicleSeriesClick(item)">
  16. <text class="list__item__user-name">{{item.modelName}}</text>
  17. </view>
  18. <u-line></u-line>
  19. </view>
  20. </scroll-view>
  21. </swiper-item>
  22. </swiper>
  23. </view>
  24. </u-popup>
  25. <view style="position: absolute;top: 45%;left: 50%;transform:translate(-50%,-50%)">
  26. <u-empty v-if="displacementList.length == 0" mode="list">
  27. </u-empty>
  28. </view>
  29. </view>
  30. </template>
  31. <script>
  32. import {
  33. seriesList,
  34. brandList
  35. } from '@/api/views/vehicle/brand.js'
  36. export default {
  37. data() {
  38. return {
  39. displacementList: [],
  40. annualStyle: false,
  41. annualStyleList: [],
  42. params:{}
  43. }
  44. },
  45. onLoad(params) {
  46. this.params = {
  47. ...params
  48. }
  49. uni.showLoading({
  50. title: '查询年款中',
  51. mask: true
  52. });
  53. seriesList(this.params).then(res => {
  54. this.displacementList = res.data
  55. uni.hideLoading();
  56. // this.annualStyle = true
  57. })
  58. // seriesList(this.params).then(res => {
  59. // this.displacementList = res.data
  60. // })
  61. },
  62. methods: {
  63. choice(item, index) {
  64. this.form = item
  65. uni.showLoading({
  66. title: '查询车型中',
  67. mask: true
  68. });
  69. seriesList({
  70. brandId: item.brandId,
  71. seriesId: item.seriesId,
  72. modelYear:item.modelYear
  73. }).then(res => {
  74. console.log(res)
  75. this.annualStyleList = res.data
  76. uni.hideLoading();
  77. this.annualStyle = true
  78. })
  79. },
  80. vehicleSeriesClick(item) {
  81. uni.$u.route('/pages/views/vehicle/autoParts', {
  82. brand:item.brandName,
  83. seriesName:item.seriesName,
  84. brandId:item.brandId,
  85. seriesId:item.seriesId,
  86. engine:item.engine,
  87. modelYear:item.modelYear,
  88. modelName:item.modelName,
  89. id:item.id
  90. });
  91. }
  92. }
  93. }
  94. </script>
  95. <style lang="scss">
  96. .box-c,
  97. .child {
  98. display: flex;
  99. flex: 1;
  100. }
  101. .list {
  102. &__item {
  103. @include flex;
  104. padding: 6px 12px;
  105. align-items: center;
  106. justify-content: space-between;
  107. &__user-name {
  108. font-size: 32rpx;
  109. color: $u-main-color;
  110. }
  111. &__user-tel {
  112. font-size: 32rpx;
  113. margin-right: 20rpx;
  114. color: $u-main-color;
  115. }
  116. }
  117. &__footer {
  118. color: $u-tips-color;
  119. font-size: 14px;
  120. text-align: center;
  121. margin: 15px 0;
  122. }
  123. }
  124. </style>