当我使用材质ui时,如何在ReactJS中选择选项卡?
在这个例子中,我不知道如何在刷新网页后保持选项卡处于选中状态。有一个问题与以前提出的问题相同。然而,这并没有得到回答。有人能给我一些提示或代码示例吗当我使用材质ui时,如何在ReactJS中选择选项卡?,reactjs,material-ui,Reactjs,Material Ui,在这个例子中,我不知道如何在刷新网页后保持选项卡处于选中状态。有一个问题与以前提出的问题相同。然而,这并没有得到回答。有人能给我一些提示或代码示例吗 return ( <div className={classes.root}> <AppBar position="static"> <Tabs value={value} onChange={handleChange} aria-label="simple tabs examp
return (
<div className={classes.root}>
<AppBar position="static">
<Tabs value={value} onChange={handleChange} aria-label="simple tabs example">
<Tab label="Item One" {...a11yProps(0)} />
<Tab label="Item Two" {...a11yProps(1)} />
<Tab label="Item Three" {...a11yProps(2)} />
</Tabs>
</AppBar>
<TabPanel value={value} index={0}>
Item One
</TabPanel>
<TabPanel value={value} index={1}>
Item Two
</TabPanel>
<TabPanel value={value} index={2}>
Item Three
</TabPanel>
</div>
);
}
返回(
您可以为每个选项卡创建不同的路线,并将该信息存储在路线中
路线示例:-
https://uz2qz.csb.app/tabs/1 //tab index 1
https://uz2qz.csb.app/tabs/2 //tab index 2
https://uz2qz.csb.app/tabs/3 //tab index 3
选项1:-
在页面呈现中,使用窗口。位置从URL获取选项卡索引(如果有),并使用该信息设置当前选项卡索引,并将其作为道具传递给选项卡组件
选项2:-
使用反应路由器。
使用route component使用path变量创建管线
...
...
TabsComponent.js
class TabsComponent extends React.Component {
render() {
const { match } = this.props;
const { params } = match;
const tabIndex = params.tabIndex ? params.tabIndex : 0;
return (
<div className={classes.root}>
<AppBar position="static">
<Tabs value={tabIndex} onChange={handleChange} aria-label="simple tabs example">
<Tab label="Item One" {...a11yProps(0)} />
<Tab label="Item Two" {...a11yProps(1)} />
<Tab label="Item Three" {...a11yProps(2)} />
</Tabs>
</AppBar>
<TabPanel value={value} index={0}>
Item One
</TabPanel>
<TabPanel value={value} index={1}>
Item Two
</TabPanel>
<TabPanel value={value} index={2}>
Item Three
</TabPanel>
</div>
);
}
}
类选项卡组件扩展了React.Component{
render(){
const{match}=this.props;
常量{params}=match;
常量tabIndex=params.tabIndex?params.tabIndex:0;
返回(
项目一
项目二
项目三
);
}
}
class TabsComponent extends React.Component {
render() {
const { match } = this.props;
const { params } = match;
const tabIndex = params.tabIndex ? params.tabIndex : 0;
return (
<div className={classes.root}>
<AppBar position="static">
<Tabs value={tabIndex} onChange={handleChange} aria-label="simple tabs example">
<Tab label="Item One" {...a11yProps(0)} />
<Tab label="Item Two" {...a11yProps(1)} />
<Tab label="Item Three" {...a11yProps(2)} />
</Tabs>
</AppBar>
<TabPanel value={value} index={0}>
Item One
</TabPanel>
<TabPanel value={value} index={1}>
Item Two
</TabPanel>
<TabPanel value={value} index={2}>
Item Three
</TabPanel>
</div>
);
}
}