Reactjs 盖茨比:如果<;链接/>;是活动的吗?
伙计们!如果我的盖茨比链接处于活动状态,我想更改内部的样式。我想通过Reactjs 盖茨比:如果<;链接/>;是活动的吗?,reactjs,onclick,toggle,gatsby,Reactjs,Onclick,Toggle,Gatsby,伙计们!如果我的盖茨比链接处于活动状态,我想更改内部的样式。我想通过display:none隐藏/显示子菜单。但不知道如何将此参数从链接传递到其他位置。有什么想法吗?非常感谢 我试图获得或通过这一页上的状态,但也没有运气 return ( <li key={`sidebar-id${i}`}> <Link to={item.path} activeStyle={{ color: "red" }} partiallyActive={true}> {i
display:none
隐藏/显示子菜单。但不知道如何将此参数从链接传递到其他位置。有什么想法吗?非常感谢
我试图获得或通过这一页上的状态,但也没有运气
return (
<li key={`sidebar-id${i}`}>
<Link to={item.path} activeStyle={{ color: "red" }} partiallyActive={true}>
{item.name}
</Link>
<ul className={`${styles.menu__secondLevel} small-body-text`} style={ifLinkisActive}>
{subItems}
</ul>
</li>
);
返回(
{item.name}
{子项}
);
以下是侧边栏项目的全部代码:
const SidebarItems = routes.map((item, i) => {
// If Sidebar has sub items
if (item.items) {
// Loop trough sub items
const subItems = item.items.map((subItem, j) => {
return (
<li key={`sidebar-id${j}`}>
<Link to={subItem.path}>{subItem.name}</Link>
</li>
);
});
// Main menu with "subItems" variable
return (
<li key={`sidebar-id${i}`}>
<Link
to={item.path}
activeStyle={{ color: "red" }}
partiallyActive={true}
>
{item.name}
</Link>
<ul className={`${styles.menu__secondLevel} small-body-text`}>
{subItems}
</ul>
</li>
);
// If doesn't have
} else {
return (
<li key={`sidebar-id${i}`}>
<Link to={item.path} activeStyle={{ color: "red" }}>
{item.name}
</Link>
</li>
);
}
});
const SidebarItems=routes.map((项目,i)=>{
//如果侧边栏有子项
如果(项目.项目){
//循环槽子项
const subItems=item.items.map((subItem,j)=>{
返回(
{subItem.name}
);
});
//带有“subItems”变量的主菜单
返回(
{item.name}
{子项}
);
//如果没有
}否则{
返回(
{item.name}
);
}
});
我想你可以用css解决这个问题。盖茨比的链接
有一个activeClassName
道具,它将把一个类附加到活动链接上。您可以使用css+
选择器设置同级ul
的样式
a.active{
颜色:红色;
}
.active+子菜单{
显示:块;
}
.子菜单{
显示:无;
}
- 子菜单
我想你可以用css解决这个问题。盖茨比的链接
有一个activeClassName
道具,它将把一个类附加到活动链接上。您可以使用css+
选择器设置同级ul
的样式
a.active{
颜色:红色;
}
.active+子菜单{
显示:块;
}
.子菜单{
显示:无;
}
- 子菜单
谢谢你,Darek的帮助。我想了想,这是一个很好的决定:-)但我想呆在里面以便于访问,也可能是我做错了什么,还有另一种方法:-)@PavelLaptev我只是在模仿你的结构-你有
&
在里面,彼此相邻。也许我误解了你的问题,你能再澄清一点吗?是我,达瑞克。我很愚蠢:-)没有注意到,对不起。谢谢你again@pavelLaptev哈哈,不用担心,很高兴它有帮助!我确信有一种更具反应性的方法来处理这个问题(这不涉及css)。如果我有什么想法,我会补充答案。太好了!我打算深入研究redux:)谢谢你,Darek的帮助。我想了想,这是一个很好的决定:-)但我想呆在里面以便于访问,也可能是我做错了什么,还有另一种方法:-)@PavelLaptev我只是在模仿你的结构-你有
&
在里面,彼此相邻。也许我误解了你的问题,你能再澄清一点吗?是我,达瑞克。我很愚蠢:-)没有注意到,对不起。谢谢你again@pavelLaptev哈哈,不用担心,很高兴它有帮助!我确信有一种更具反应性的方法来处理这个问题(这不涉及css)。如果我有什么想法,我会补充答案。太好了!我打算深入研究redux:)