index.jsx 2.2KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. import React, { useState, useEffect } from 'react'
  2. import { useModel } from '@/store'
  3. import WuYeFuWuItem from '@/components/WuYeFuWuItem/index'
  4. import ScrollPageRefresh from '@/components/ScrollPageRefresh/index'
  5. import request, { apis } from '@/utils/request'
  6. import '@/assets/css/reset.less'
  7. import '@/assets/css/iconfont.less'
  8. import './index.less'
  9. export default function WuYeFuWu () {
  10. const { user } = useModel('user')
  11. const [PageList, setPageList] = useState([])
  12. const [BannerList, setBannerList] = useState([])
  13. useEffect(() => {
  14. GetBanner()
  15. }, [])
  16. const GetBanner = (done = () => { }) => { // 获取轮播图
  17. request({ ...apis.getBanner, params: { contentType: `news`, pageNum: 1, pageSize: 1 } }).then((res) => {
  18. setBannerList([...(res || [])])
  19. done()
  20. }).catch(() => {
  21. done()
  22. })
  23. }
  24. const Refresh = (e) => { // 下拉刷新
  25. setPageList(e)
  26. }
  27. const Push = (e) => { // 上拉加载
  28. setPageList(PageList.concat(e))
  29. }
  30. return (
  31. <view className='WuYeFuWu'>
  32. <ScrollPageRefresh ApiName={`getWuYeFuWuList`} Refresh={Refresh} Push={Push}>
  33. {/* 大图 */}
  34. <view className='BigImg'>
  35. {
  36. BannerList.length > 0 &&
  37. <image mode='aspectFill' src={BannerList[0].image} className='centerLabel' onClick={() => { Taro.navigateTo({ url: `/pages/HuoDong/ZiXunDetail/index?id=${BannerList[0].targetId}` }) }}></image>
  38. }
  39. </view>
  40. {/* 物业办事指南 */}
  41. <view className='BanShiZhiNan'>
  42. <text>物业办事指南</text>
  43. <view className='flex-h'>
  44. <view className='Line'><view></view></view>
  45. <view className='flex-item'>
  46. <text>1、业主收楼手续办理</text>
  47. <text>2、物业转名手续办理</text>
  48. <text>3、业主卡、住户卡办理</text>
  49. </view>
  50. </view>
  51. </view>
  52. {/* 服务列表 */}
  53. <view className='List'>
  54. {
  55. PageList.map((item, index) => (
  56. <view key={`WuYeFuWuItem-${index}`}>
  57. <WuYeFuWuItem Data={item}></WuYeFuWuItem>
  58. </view>
  59. ))
  60. }
  61. </view>
  62. </ScrollPageRefresh>
  63. </view>
  64. )
  65. }