本地编译PancakeSwap前端仓库运行npm run start编译失败如何解决?
编译报错修复方案
你遇到的报错分为两类,对应修复方法如下:
1. react/no-unused-prop-types 类型报错(共8处)
报错原因:组件的PropTypes中声明了对应属性,但组件实际运行逻辑中没有使用该属性。
可选择两种修复方式:
- 确认该属性无使用需求:直接删除对应文件里PropTypes中该属性的声明即可,比如打开
src\components\Modal\ModalInput.tsx,删掉第13行附近的placeholder相关PropType定义。 - 预留属性后续使用:在对应属性声明的上一行添加注释
// eslint-disable-next-line react/no-unused-prop-types,跳过该行校验即可。
2. react/jsx-no-bind 类型报错(共5处)
报错原因:在JSX的属性中直接写了箭头函数、bind调用,每次组件渲染都会生成新的函数实例,可能触发子组件不必要的重渲染。
可选择两种修复方式:
- 标准性能优化修复:将函数定义抽到组件外部,或者用
useCallback钩子包裹函数定义后,再将函数引用传递给JSX属性即可。 - 临时调试跳过校验:如果不需要处理性能问题只想快速启动项目,可以在项目根目录的
.eslintrc配置文件的rules字段下添加两行规则:
"react/no-unused-prop-types": "off", "react/jsx-no-bind": "off"
修改后重启npm run start即可跳过校验正常编译。如果是React脚手架项目,也可以直接修改启动命令,临时禁用ESLint报错阻塞:
- Windows系统:将package.json的start命令改为
set ESLINT_NO_DEV_ERRORS=true && react-scripts start - Mac/Linux系统:将package.json的start命令改为
ESLINT_NO_DEV_ERRORS=true react-scripts start
内容的提问来源于stack exchange,提问作者Batuhan Taştekin
相关产品推荐
相关产品推荐

