我无法将to
传递给react-router-dom
的Tab元素中material-ui core
的链接组件。
我终于想出了这个解决方案:
import * as React from 'react';
import Tabs from '@material-ui/core/Tabs';
import Tab from '@material-ui/core/Tab';
import { Link } from 'react-router-dom';
interface Props {
title?: string;
}
interface State {
value: number;
}
class NavButtons extends React.Component<Props, State> {
constructor(props: Props) {
super(props);
this.state = { value: 0 };
}
public handleOnChange = (event: any, value: number) => {
this.setState({ value })
}
public render() {
const {value} = this.state
return (
<Tabs value={value} onChange={this.handleOnChange} >
<Tab label="Home" component={Link} {...{to:"/"} as any} />
<Tab label="Contact" component={Link} {...{to:"/contact/"} as any} />
</Tabs>
)
}
}
export default NavButtons
唯一的问题是,我似乎无法找出...{} as any
在材料文档中的作用或反应。
有人可以向我解释一下吗?我看到很多React程序员都在使用它,但我不知道它究竟做了什么。
答案 0 :(得分:1)
typescript. what is mean: (this as any)
看起来像是TypeScript语法。添加SourceData:=dataAddress
可能会删除as any
的类型检查,因此不会引起任何警告/错误。