文章阅读

沉浸阅读完整内容

写文章

React使用Design的TabBar进行二级路由出口显示

正在统计阅读人数 正在统计字数
登录收藏0
字号 100%

React使用AntDesignMobileUI组件在Layuot页面组件中如何中使用 TabBar标签栏进行二级路由显示


  • 1.TabBar中的key改为你的路由地址,需要提前配置好,在app.js中
  • 2.引入OutTabBalet ,作为出口显示
  • 3.使用TabBa的onChange,配合useNavigate进行页面跳转。

import React, { useState, useEffect } from 'react';
import { TabBar } from 'antd-mobile';
import './layout.scss';
import { useNavigate, Outlet, useLocation } from 'react-router-dom';
import {
    AppOutline,
    UnorderedListOutline,
    UserOutline,
} from 'antd-mobile-icons';

export default function Layout() {
    let [active, setActive] = useState('');
    let location = useLocation();
    let navigate = useNavigate();
    useEffect(() => {
        setActive(location.pathname);
    }, []);

    let tabs = [
        {
            key: '/Layout/Popular',
            title: '热映',
            icon: <AppOutline />,
        },
        {
            key: '/Layout/Cinema',
            title: '影院',
            icon: <UnorderedListOutline />,
        },
        {
            key: '/Layout/My',
            title: '我的',
            icon: <UserOutline />,
        },
    ];

    let setRouteActive = (value) => {
        navigate(value);
        setActive(value);
        console.log(value);
    };

    return (
        <div className="layout-page">
            <div className="page">
                <Outlet />
            </div>
            <TabBar onChange={setRouteActive} activeKey={active}  >
                {tabs.map(item => (
                    <TabBar.Item
                        key={item.key}
                        icon={item.icon}
                        title={item.title}
                    />
                ))}
            </TabBar>
        </div>
    );
}

推荐阅读

4 篇精选
文章 / 34数组的拼接 文章 / 35判断数组元素是否大/小于平均值 文章 / 33定义一个数组,包含9个任意的整数,求该数组中奇数的个数 文章 / 32判断本月休息天数

发表评论

评论 0

还没有评论,欢迎留下第一条讨论。

分享精彩,传递价值

生成专属海报,分享你的文章,让更多人发现好内容

浏览器不支持 Canvas,无法生成海报。

每日签到

每天来这里,记录一点持续积累。

当前积分--积分
本月签到--
本月获得--积分
正在读取