【发布时间】:2019-08-02 02:57:37
【问题描述】:
我是新来的反应并尝试在路径之间创建具有动态 ID 的面包屑。
我对组件的支持是:
const breadcrumbsData = {
path: "facilities/65743/facilitycontact",
breadcrumbNameMap: {
"/facilities": "Facility",
"/facilities/:facilityId": ":facilityId",
"/facilities/:facilityId/facilitycontact": "Facility Contact"
}
};
呈现面包屑的代码是
<Breadcrumbs arial-label="Breadcrumb">
{paths.map((path, index) => {
const url = "/" + paths.slice(0, index + 1).join("/");
const last = index === paths.length - 1;
return last ? (
<Typography color="inherit"> {breadcrumbNameMap[url]} </Typography>
) : (
<Link to={url}>{breadcrumbNameMap[url]}</Link>
);
})}
</Breadcrumbs>
我尝试了不同的方法,但无法弄清楚如何做到这一点。在路径之间没有 ID 的情况下,它可以完美运行。例如
const breadcrumbsData = {
path: "facilities/facilityprofile/facilitycontact/workcontact",
breadcrumbNameMap: {
"/facilities": "Facility",
"/facilities/facilityprofile": "Facility Profile",
"/facilities/facilityprofile/facilitycontact": "Facility Contact"
}
};
P:S - 尝试了“匹配”但没有去任何地方,我的用例是我手动从道具传递路径。
这是完整的代码
【问题讨论】:
标签: reactjs react-router material-ui breadcrumbs