roadlist.vue 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. <template>
  2. <view>
  3. <u-navbar
  4. title="停车场列表"
  5. title-color="#fff"
  6. :custom-back="customBack"
  7. :border-bottom="false"
  8. back-icon-color="#CCE8FF"
  9. :background="{background: 'linear-gradient(145deg, #41AFF9 0%, #2D8CFB 100%)' }"></u-navbar>
  10. <view class="road-list">
  11. <view class="road-list-item" v-for="item in Roads" :key="item.id" @click="handleModifyRoad(item.id)">
  12. <view class="name">{{item.roadName}}</view>
  13. <view class="content">
  14. <view class="position">{{item.areaName}}</view>
  15. <view class="distance">{{item.distance|kmUnit}}</view>
  16. </view>
  17. </view>
  18. </view>
  19. <u-toast ref="uToast" />
  20. </view>
  21. </template>
  22. <script>
  23. export default{
  24. data(){
  25. return{
  26. Roads:[],
  27. latitude:'',
  28. longitude:'',
  29. }
  30. },
  31. onLoad(page){
  32. // this.Roads = this.$store.state.vuex_user?.roadList;
  33. console.log('page', page)
  34. this.latitude = page.latitude;
  35. this.longitude = page.longitude;
  36. },
  37. onShow(){
  38. this.$u.api.bindRoads({latitude: this.latitude,longitude: this.longitude})
  39. .then(res=>{
  40. this.Roads = res.data.roadList;
  41. // this.list=[];
  42. // res.data.roadList.forEach(item=>{
  43. // const obj = {
  44. // roadName: item.roadName,
  45. // areaName: item.areaName,
  46. // distance: item.distance,
  47. // }
  48. // this.list.push(obj)
  49. // console.log('obj',obj)
  50. // });
  51. });
  52. },
  53. methods:{
  54. customBack(){
  55. uni.navigateBack({
  56. delta: 1
  57. });
  58. },
  59. handleModifyRoad(id){
  60. this.$u.api.modifyRoad({roadId:id})
  61. .then(res=>{
  62. let userdata = this.$store.state.vuex_user;
  63. userdata.roadList = res.data?.roadList;
  64. this.$u.vuex('vuex_user', userdata);
  65. uni.setStorageSync('payee_roadinfo', JSON.stringify(userdata.roadList?.[0] || []));
  66. plus.nativeUI.toast('切换路段成功');
  67. uni.reLaunch({
  68. url: '/pages/index/index'
  69. });
  70. }).catch(err=>{
  71. plus.nativeUI.toast('失败' + err.msg);
  72. });
  73. }
  74. }
  75. }
  76. </script>
  77. <style lang="scss">
  78. @import './roadlist.scss'
  79. </style>