好客租房121-租房小组分业务和数据处理

简介: 好客租房121-租房小组分业务和数据处理

1根据当前地理位置展示不同小组信息

2根据后台接口找到找房数据

3前端只负责渲染

数据获取

1在state中获取数据

2根据文档获取数据

import React from 'react'
 import axios from 'axios'
 //留白
 import { Carousel, Flex } from 'antd-mobile'
 import Nav1 from '../../assets/images/nav-1.png'
 import Nav2 from '../../assets/images/nav-2.png'
 import Nav3 from '../../assets/images/nav-3.png'
 import Nav4 from '../../assets/images/nav-4.png'
 //导入样式
 import './index.scss'
 const navs = [
     {
         id: 1,
         img: Nav1,
         title: '整租',
         path: '/home/list',
     },
     {
         id: 2,
         img: Nav2,
         title: '合租',
         path: '/home/list',
     },
     {
         id: 3,
         img: Nav3,
         title: '地图找房',
         path: '/home/list',
     },
     {
         id: 4,
         img: Nav4,
         title: '去出租',
         path: '/home/list',
     },
 ]
 // 轮播图不会自动播放  数据返回过来的时候高度不够 数据加载前后数据的问题
 class Index extends React.Component {
     state = {
         data: ['1', '2', '3'],
         imgHeight: 212,
         isSwiperLoding: false,
         groups: [],
     }
     componentDidMount() {
         // simulate img loading
         this.getGroups()
         setTimeout(() => {
             this.setState({
                 data: [
                     'AiyWuByWklrrUDlFignR',
                     'TekJlZRVCjLFexlOCuWn',
                     'IJOtIlfsYdTyaDTRVrLI',
                 ],
                 isSwiperLoding: true,
             })
         }, 100)
     }
     async getSwipers() {
         const res = await axios.get('http://localhost:8080/home/swiper')
         console.log('轮播如数据为:', res)
         //   this.setState({
         //       swiper:res.data.body
         //   })
     }
     async getGroups() {
         const res = await axios.get('http://localhost:8080/home/groups', {
             params: {
                 area: 'AREA%7C88cff55c-aaa4-e2e0',
             },
         })
         console.log('轮播如数据为:', res)
         this.setState({
             groups: res.data.body,
         })
     }
     //渲染轮播图的方法
     renderSwipers() {
         return this.state.data.map((val) => (
             <a
                 key={val}
                 href="http://www.alipay.com"
                 style={{
                     display: 'inline-block',
                     width: '100%',
                     height: this.state.imgHeight,
                 }}
             >
                 <img
                     src={`https://zos.alipayobjects.com/rmsportal/${val}.png`}
                     alt=""
                     style={{ width: '100%', verticalAlign: 'top' }}
                     onLoad={() => {
                         // fire window resize event to change height
                         window.dispatchEvent(new Event('resize'))
                         this.setState({ imgHeight: 'auto' })
                     }}
                 />
             a>
         ))
     }
     //渲染导航菜单
     renderNavs() {
         return navs.map((item) => (
             <Flex.Item
                 key={item.id}
                 onClick={() => {
                     this.props.history.push(item.path)
                 }}
             >
                 <img src={item.img} alt="" />
                 <h2>{item.title}h2>
             Flex.Item>
         ))
     }
     render() {
         return (
             //留白 WingBlank
             <div className="index">
                 <div className="swiper">
                     {this.state.isSwiperLoding === true ? (
                         <Carousel
                             //自动播放
                             autoplay={true}
                             infinite
                             //   beforeChange={(from, to) => console.log(`slide from ${from} to ${to}`)}
                             //   afterChange={index => console.log('slide to', index)}
                         >
                             {this.renderSwipers()}
                         Carousel>
                     ) : (
                         ''
                     )}
                 div>
                 <Flex className="nav">{this.renderNavs()}Flex>
             div>
         )
     }
 }
 export default Index

总结


通过接口获取数据 获取到需要的数据格式

相关文章
|
5月前
|
前端开发 Java Spring
公司这套架构统一处理 try...catch 这么香,求求你不要再满屏写了,再发现扣绩效!
公司这套架构统一处理 try...catch 这么香,求求你不要再满屏写了,再发现扣绩效!
28 0
|
区块链
DAPP画室/书画/字画古董拍卖竞拍抢拍商城系统开发(案例设计)/项目逻辑/成熟技术/方案介绍/源码说明
智能合约是DAPP的核心组成部分,它是一种自执行的计算机代码,It can ensure that any transaction is validated and executed.智能合约提供了一种区块链上的可编程机制,通过编写代码,将一系列的条件和操作映射到智能合约中,To achieve management and control of data and transactions on the blockchain.
|
存储 安全 数据挖掘
外卖跑腿/同城跑腿/校园跑腿/同城配送外卖系统开发规则玩法/案例设计/逻辑方案/需求程序/源码
外卖跑腿、同城跑腿、校园跑腿和同城配送外卖系统开发,是指开发一个用于管理和协调外卖送餐和快递物品的平台或应用程序。该系统能够连接顾客、骑手和商家,提供顾客下单、骑手接单、派送商品等功能。
|
安全 区块链 数据库
互助拍卖竞拍抢单模式系统开发项目方案丨DAPP拍卖竞拍抢拍互助系统开发(案例开发)/开发逻辑/源码运营版
    dapp的开发和运行基于智能合约,智能合约是一种运行在区块链上的自动执行合约,它可以实现自动化的交易和管理逻辑,And automatically supervise and execute according to the set rules.Dapp achieves decentralized data storage,business logic,and value exchange through smart contracts.
|
JSON 前端开发 Java
校园外卖点餐系统——Day04【菜品管理业务开发】
校园外卖点餐系统——Day04【菜品管理业务开发】
177 0
校园外卖点餐系统——Day04【菜品管理业务开发】
|
SQL JSON 前端开发
校园外卖点餐系统——Day02【员工管理业务开发】
校园外卖点餐系统——Day02【员工管理业务开发】
152 0
校园外卖点餐系统——Day02【员工管理业务开发】
|
Java 数据库连接 测试技术
校园外卖点餐系统——Day03【分类管理业务开发】
校园外卖点餐系统——Day03【分类管理业务开发】
132 0
校园外卖点餐系统——Day03【分类管理业务开发】
|
算法 数据挖掘 BI
新高考增值评价系统业务简单介绍(超详细,图文并茂)
新高考增值评价系统业务简单介绍(超详细,图文并茂)
682 0
新高考增值评价系统业务简单介绍(超详细,图文并茂)
好客租房176-获取房源数据优化
好客租房176-获取房源数据优化
130 0
好客租房176-获取房源数据优化
|
人工智能 安全 搜索推荐