好客租房117-flex布局组件导航菜单优化

简介: 好客租房117-flex布局组件导航菜单优化
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.css"
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,
      }
      componentDidMount() {
        // simulate img loading
        // this.getSwipers()
        setTimeout(() => {
            this.setState({
                data: ['AiyWuByWklrrUDlFignR', 'TekJlZRVCjLFexlOCuWn', 'IJOtIlfsYdTyaDTRVrLI'],
            });
          }, 100);
      }
      async getSwipers(){
          const res=await axios.get("http://localhost:8080/home/swiper")
          console.log("轮播如数据为:",res)
        //   this.setState({
        //       swiper: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' });
                }}
              />
          ))
      }
      //渲染导航菜单
      renderNavs(){
          return navs.map(item=>(
            {this.props.history.push(item.path)}}>
            好客租房117-flex布局组件导航菜单优化_ios
{item.title}
          ))
      }
      render() {
        return (
            //留白 WingBlank
            //自动播放
              autoplay={false}
              infinite
            //   beforeChange={(from, to) => console.log(`slide from ${from} to ${to}`)}
            //   afterChange={index => console.log('slide to', index)}
            >
             {this.renderSwipers()}
             {this.renderNavs()}
        );
      }
}
export default Index

运行结果

图片.png

相关文章
|
3月前
|
开发者 容器
flex 布局属性在实际项目中的应用场景有哪些?
flex 布局属性在实际项目中的应用场景有哪些?
|
2月前
|
前端开发 UED 容器
使用 Flex 布局实现垂直居中效果
【10月更文挑战第7天】
165 57
|
1月前
|
前端开发 UED 容器
在 CSS 中使用 Flex 布局实现页面自适应时需要注意什么?
【10月更文挑战第22天】在使用 Flex 布局实现页面自适应时,需要对其基本原理和特性有深入的理解,同时结合具体的布局需求和场景,进行细致的调整和优化。通过合理的设置和注意事项的把握,才能实现理想的自适应效果,提升用户体验。还可以根据实际情况进行更深入的探索和实践,以不断提升 Flex 布局的应用能力。
|
18天前
|
容器
HTML中使用Flex布局实现双行夹批效果
在HTML中,还可以用table元素来实现双行夹批效果,但比flex布局代码更复杂,效果也不见得更理想。
|
20天前
|
开发者 UED 容器
鸿蒙next版开发:ArkTS组件通用属性(Flex布局)
在HarmonyOS next中,ArkTS的Flex布局是一种强大且灵活的布局方式,支持水平或垂直方向排列元素,并能动态调整大小和位置以适应不同屏幕。主要属性包括justifyContent、alignItems、direction和wrap,适用于导航栏、侧边栏和表单等多种场景。示例代码展示了如何使用这些属性创建美观的布局。
57 10
|
1月前
|
容器
在 Flex 布局中,如何设置元素在侧轴上的初始对齐方式?
【10月更文挑战第22天】同时,还可以进一步探索其他 Flex 布局相关的属性和技巧,以更好地掌握 Flex 布局的强大功能,创造出更具创意和适应性的页面布局。
29 2
|
2月前
|
数据可视化 前端开发 搜索推荐
FLEX组件可视化设计器CSS3代码生成器
FLEX组件可视化设计器CSS3代码生成器
43 4
|
2月前
|
前端开发 容器
flex布局
【10月更文挑战第7天】
31 1
flex布局属性简介
flex布局属性简介