reactjs - 在 Reactjs 引导程序中选择导航栏时无法在导航栏上应用样式?
问题描述
当我从navbar
. 当我单击它时,它只出现在导航选项卡上,但在页面打开时不会一直保留。我也使用了,useSate
但当我尝试控制状态时它不会改变状态。
import React,{useState} from 'react';
import { Navbar,Container, Nav } from "react-bootstrap";
import {Link} from 'react-router-dom';
const NavbarComponent = () => {
const [activeTab1, setActiveTab1] = useState(false);
const [activeTab2, setActiveTab2] = useState(false);
const [activeTab3, setActiveTab3] = useState(false);
const [activeTab4, setActiveTab4] = useState(false);
function handleHighlightTab(eventKey) {
//alert(`selected ${eventKey}`)
if(eventKey === '1'){
setActiveTab1(true);
setActiveTab2(false);
setActiveTab3(false);
setActiveTab4(false);
}
else if(eventKey === '2') {
setActiveTab1(false);
setActiveTab2(true);
setActiveTab3(false);
setActiveTab4(false);
}
else if(eventKey === '3') {
setActiveTab1(false);
setActiveTab2(false);
setActiveTab3(true);
setActiveTab4(false);
}
else if(eventKey === '4') {
setActiveTab1(false);
setActiveTab2(false);
setActiveTab3(false);
setActiveTab4(true);
}
alert(`
1 - ${activeTab1} \n
2 - ${activeTab2} \n
3 - ${activeTab3} \n
4 - ${activeTab4} `
)
}
return (
<>
<Navbar bg="dark" variant="dark" fixed="top">
<Container>
<Navbar.Brand href="/">Verticals</Navbar.Brand>
<Nav className="me-auto" activeKey="" variant='pills' onSelect={handleHighlightTab}>
<Nav.Item>
<Nav.Link
href="/grocery"
eventKey="1"
style={ activeTab1? {border:'1px solid white' } : {}}
>
Grocery
</Nav.Link>
</Nav.Item>
<Nav.Link
href="/fashion"
eventKey="2"
style={ activeTab2? {border:'1px solid white' } : {}}
>
Fashion
</Nav.Link>
<Nav.Link
href="/footwear"
eventKey="3"
style={ activeTab3? {border:'1px solid white' } : {}}
>
Footwear
</Nav.Link>
<Nav.Link
href="/beauty"
eventKey="4"
style={ activeTab4? {border:'1px solid white' } : {}}
>
Beauty
</Nav.Link>
</Nav>
</Container>
</Navbar>;
</>
)
}
export default NavbarComponent;
我做错了吗?或者他们有什么改进的方法吗?
解决方案
推荐阅读
- php - 下载 dompdf 而不是在 codeigniter 中查看
- flipkart-api - Flipkart 使用卖家 API 创建列表
- string - 这个字符串是用什么编码的?
- java - 如何检查一个数字是否在一个范围内
- string - Powershell将字符串转换为整数
- java - 无法在 Java 中参数化 SQl 查询
- amazon-s3 - 来自 python aws-lambda 如何使用 GeoPandas 阅读器读取 S3 存储桶上的文件?
- python - 在 Django 中使用 pk 从 UpdateView 到 DetailView 的success_url
- javascript - 使用javascript调用外部api端点时出错
- python - 如何在不提及索引值的情况下从熊猫中删除行,因为我有重复的索引值