首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何解决React Button组件中的错误?

如何解决React Button组件中的错误?
EN

Stack Overflow用户
提问于 2021-08-04 06:01:19
回答 1查看 79关注 0票数 0

我的Button组件中有一个错误,但我不知道哪里出了问题。如果有人能帮我那就太好了..。代码如下。最近我添加了ESLint +更漂亮,但我不知道这是不是问题所在。

导出的文件

代码语言:javascript
复制
import React from 'react';
import classes from './Button.module.css';

const Button = (props) => {
return (
<button
  type={props.type}
  className={`${classes.button} ${props.className}`}
  onClick={props.onClick}
>
  {props.children}
</button>
  );
};

export default Button;

导入的文件

代码语言:javascript
复制
import Button from '../UI/Button';

const Login = () => {
return (
<div>
  <form>
    <Button
      type='submit'
      className={classes['login-btn']}
      onClick={submitLoginHandler}
    >
      Login
    </Button>
  </form>
</div>
);
};

export default Login;

错误

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-08-04 06:08:31

这些是警告,而不是错误。它说你必须检查你的属性类型(字符串,İnt,布尔值,函数)

对于您的代码:

代码语言:javascript
复制
Button.propTypes = {
  type: PropTypes.string,
  className:PropTypes.string,
  onClick: PropTypes.func,
  children: PropTypes.string
};

但我建议你不要使用儿童道具,例如使用buttonLabel。

代码语言:javascript
复制
<Button
  type='submit'
  className={classes['login-btn']}
  onClick={submitLoginHandler}
  buttonLabel="Login"
  />

得到这样的道具:

代码语言:javascript
复制
const Button = ({type,className,onClick,buttonLabel}) => {
return (
<button
  type={type}
  className={`${classes.button} ${className}`}
  onClick={onClick}
>
  {buttonLabel}
</button>
  );
};

最终属性类型:

代码语言:javascript
复制
Button.propTypes = {
  type: PropTypes.string,
  className:PropTypes.string,
  onClick: PropTypes.func,
  buttonLabel: PropTypes.string
};

更多信息:https://reactjs.org/docs/typechecking-with-proptypes.htm

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68646110

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档