【发布时间】:2019-08-31 06:38:11
【问题描述】:
以下代码在我的 ReactStrap DropdownMenu 中正确呈现我的 NavLink:
<!-- RENDERS CORRECTLY -->
<Nav className="ml-auto" navbar>
<UncontrolledDropdown nav inNavbar>
<DropdownToggle nav caret> A dropdown menu </DropdownToggle>
<DropdownMenu>
<NavLink className="dropdown-item" to=“/url1”> item 1 </NavLink>
<NavLink className="dropdown-item" to=“/url2”> item 2 </NavLink>
</DropdownMenu>
</UncontrolledDropdown>
</Nav>
但是,如果我将 DropdownMenu 移动到一个单独的组件中,如下所示,返回完全相同的 JSX,css 很糟糕,并且生成的 a 元素具有“to”属性而不是“href”属性,因此链接不起作用.
<!-- BREAKS -->
<Nav className="ml-auto" navbar>
<UncontrolledDropdown nav inNavbar>
<DropdownToggle nav caret> A dropdown menu </DropdownToggle>
<DropdownMenuComponent/>
</UncontrolledDropdown>
</Nav>
...
class DropdownMenuComponent extends Component {
render() {
return (
<DropdownMenu>
<NavLink className="dropdown-item" to=“/url1”> item 1 </NavLink>
<NavLink className="dropdown-item" to=“/url2”> item 2 </NavLink>
</DropdownMenu>
);
}
}
有什么办法可以解决这个问题吗?如果我不能指望组件的基本嵌套,那么使用 ReactStrap 会令人不安。
【问题讨论】:
-
我确定这是一个错字,但在您的第二个代码示例中,我没有看到任何使用
DropdownMenuComponent的地方(例如嵌套在您的Nav中)。
标签: reactjs reactstrap