租房小程序前端代码
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

152 lines
4.2 KiB

2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
  1. <template>
  2. <view>
  3. <view class="se-pb-200">
  4. <view v-if="list.length>0">
  5. <view class="se-my-20 se-mx-20 se-px-20 se-py-20 se-br-20 se-bgc-white se-flex se-flex-v" v-for="(item,index) in list" :key="index">
  6. <view @click="onDetail(item)" class=" se-flex">
  7. <view class="se-pos se-w-260 se-h-180">
  8. <image v-if="item.iconImage" class="se-a-80 se-pos-lt" :src="item.iconImage" mode=""></image>
  9. <image class="se-w-260 se-h-180 se-br-10" :src="item.images[0]" mode=""></image>
  10. </view>
  11. <view class="se-pl-10 se-w-p-100">
  12. <view class="se-c-black se-fs-28">
  13. {{item.title}}
  14. </view>
  15. <view class="se-flex se-flex-h-sb se-flex-ai-c se-fs-24 se-mt-10 se-c-66">
  16. <text>{{item.homeType}}</text>
  17. <text>{{item.timeGo}}</text>
  18. </view>
  19. <view class="se-flex se-flex-h-sb se-flex-ai-c se-mt-10">
  20. <template v-if="item.iconTitles.length>0">
  21. <view class="se-flex">
  22. <view class="se-display-ib se-c-white se-bgc-orange se-fs-22 se-br-8 se-px-10 se-py-5 se-mr-10" v-for="(items,indexs) in item.iconTitles" :key="indexs">
  23. {{items}}
  24. </view>
  25. </view>
  26. </template>
  27. <template v-else><view></view></template>
  28. <view class="se-c-66 se-flex se-flex-ai-c">
  29. <uv-icon name="eye"></uv-icon>
  30. <text class="se-ml-5 se-fs-18">{{item.num}}</text>
  31. </view>
  32. </view>
  33. <view class="se-flex se-flex-h-sb se-flex-ai-c se-mt-10">
  34. <text class="se-c-red se-fs-24 se-fw-6 se-toe-1">{{item.price}}/{{item.unit}}</text>
  35. <text class="se-c-66 se-fs-22 se-toe-1">{{item.address}}</text>
  36. </view>
  37. </view>
  38. </view>
  39. <view class="se-flex se-fs-24">
  40. <view class="se-flex-1 se-py-20">
  41. <text class="se-c-99 se-mr-20" @click="onEdit(item)">编辑</text>
  42. </view>
  43. <view class="se-flex-1 se-py-20 se-flex se-flex-h-fe">
  44. <text class="se-c-red se-mr-20" @click="onDelete(item)">删除</text>
  45. </view>
  46. </view>
  47. </view>
  48. </view>
  49. <view v-else>
  50. <uv-empty mode="list" ></uv-empty>
  51. </view>
  52. </view>
  53. </view>
  54. </template>
  55. <script>
  56. import { MyHousePageList,deleteHouse } from "@/common/api.js"
  57. export default {
  58. data(){
  59. return{
  60. pageNo:1,
  61. pageSize:10,
  62. list:[]
  63. }
  64. },
  65. onLoad(options) {
  66. this.onMyHousePageList()
  67. },
  68. onPullDownRefresh() {
  69. let that = this
  70. that.pageNo = 1
  71. that.list = []
  72. that.onMyHousePageList()
  73. },
  74. onReachBottom() {
  75. let that = this
  76. that.pageNo = that.pageNo + 1
  77. that.onMyHousePageList()
  78. },
  79. methods:{
  80. onMyHousePageList(){
  81. let that = this
  82. let params={
  83. pageNo:that.pageNo,
  84. pageSize:that.pageSize
  85. }
  86. MyHousePageList(params).then((response) => {
  87. console.info("responseindexsindexsindexs",response.result.records)
  88. response.result.records.forEach((items,indexs)=>{
  89. if(items.image){
  90. items.images = items.image.split(',')
  91. }else{
  92. items.images = []
  93. }
  94. if(items.homeImage){
  95. items.homeImages = items.homeImage.split(',')
  96. }else{
  97. items.homeImages = []
  98. }
  99. if(items.iconTitle){
  100. items.iconTitles = items.iconTitle.split(',')
  101. }else{
  102. items.iconTitles = []
  103. }
  104. })
  105. console.info('response.resultindexsindexsindexs',response.result.records)
  106. that.list = that.list.concat(response.result.records)
  107. }).catch((error) =>{
  108. })
  109. },
  110. onDetail(event){
  111. uni.navigateTo({
  112. url:"/pages_subpack/detail/index?id="+event.id
  113. })
  114. },
  115. onEdit(event){
  116. uni.navigateTo({
  117. url:"/pages_subpack/house/index?id="+event.id
  118. })
  119. },
  120. onDelete(event){
  121. let that = this;
  122. uni.showModal({
  123. title: '温馨提示',
  124. content: '确定是否删除该数据?',
  125. success: function (res) {
  126. if (res.confirm) {
  127. console.log('用户点击确定');
  128. console.info('event',event)
  129. deleteHouse({houseId:event.id}).then(response=>{
  130. uni.showToast({
  131. icon:"none",
  132. title:"删除成功"
  133. })
  134. that.onMyHousePageList()
  135. }).catch(error=>{
  136. })
  137. } else if (res.cancel) {
  138. console.log('用户点击取消');
  139. }
  140. }
  141. });
  142. }
  143. }
  144. }
  145. </script>
  146. <style>
  147. </style>