【发布时间】:2019-08-08 20:32:36
【问题描述】:
我正在清理所有警告标志,似乎 antd 或 react 没有任何关于如何修复此警告标志的文档。如果我从 Header.js 中取出 antd 导入,警告标志就消失了。
我尝试过的事情:解构道具和下面的链接:
https://github.com/ant-design/ant-design/issues/5226
Invalid value for prop `value` on <input> tag
我的代码如下所示:
App.js
import Header from "./components/header/header";
const App = () => {
const [isAuth, updateLoginStatus] = useState(!!localStorage.getItem('user'));
const logout = () => {
updateLoginStatus(false);
};
return (
<Router>
<div>
<Route render={props => { const { staticContext, ...rest} = props; return (<Header {...rest} logout={logout} />)}}/>
</div>
</Router>
);
};
export default App;
Header.js
import { Icon } from "antd";
const Header = props => {
const { logout, history } = props
const selectMenu = useCallback((option) => {
switch (option) {
case "logout":
updateHeader({
dashboard: false,
details: false,
alerts: false,
logout: true
});
auhOut();
logout();
// isAuth = false;
break;
default:
break;
}
},[logout,history]);
export default Header;
然后它继续给出这个警告:
警告: 标签上的 prop
logout的值无效
【问题讨论】:
-
错误似乎来自您未显示的代码,很可能是一些 JSX 元素...
-
这个值
logout: true是否由一个基本上是i元素的组件控制? -
和
antd无关,你这里没有组件 -
@SultanH。它由 styled-components div 元素中的 onClick 控制。
-
@DennisVash 每次我删除导入的 antd 图标时,警告都会消失...
标签: javascript reactjs antd