TypeError:无法读取未定义的属性“长度”(React,heroku)
Posted
技术标签:
【中文标题】TypeError:无法读取未定义的属性“长度”(React,heroku)【英文标题】:TypeError: Cannot read property 'length' of undefined (React, heroku) 【发布时间】:2021-10-03 01:38:14 【问题描述】:react_devtools_backend.js:2574 TypeError: Cannot read property 'length' of undefined
at ra (react-dom.production.min.js:156)
at ba (react-dom.production.min.js:167)
at Object.wa [as useEffect] (react-dom.production.min.js:167)
at Object.t.useEffect (react.production.min.js:22)
at hn (makeStyles.js:191)
at p (makeStyles.js:228)
at withStyles.js:55
at oa (react-dom.production.min.js:157)
at La (react-dom.production.min.js:176)
at Vs (react-dom.production.min.js:271)
如何解决此错误?我使用 react build pack 在 Heroku 上托管了我的 react 应用程序,当我尝试加载一些进行 API 调用的页面时,它显示了该错误,但是当我在本地机器上运行它时,它运行良好。
以下是我认为不会导致错误的代码的 sn-p
!this.props.loading ? this.props.packs &&
this.props.packs?.length > 0 && this.props.packs?.map((pack) =>
return <Pack key=pack.id
pack=pack onPurchasePackage=this.onPurchasePackage/> ) : null
【问题讨论】:
您好,请先分享代码,以便我们为您提供帮助。第二次尝试在开发工具中调试,看看问题出在哪里 @TalOrlanczyk 感谢您的回复。我不认为错误来自我的代码,从我分享的 sn-p 你会看到它来自“react_devtools_backend.js” api 调用来自本地机器的同一个端点?我的意思是服务器端是同一个端点? @TalOrlanczyk 我不确定我是否正确理解了您的问题。但是前端和后端是不同的端点 我的意思是前端调用相同的后端端点,例如:dev: localhost:3000 staging: localhost:3000 【参考方案1】:我发现我的代码存在问题。问题在于我放置材料 ui hoc 的方式。
export default connect(mapStateToProps, mapDispatchToProps)(withStyles(useStyles)(withErrorHandler(Packages, axios)));
这是错误的
export default connect(mapStateToProps, mapDispatchToProps)
(withStyles(styles, withTheme: true )(withErrorHandler(Packages, axios)));
【讨论】:
以上是关于TypeError:无法读取未定义的属性“长度”(React,heroku)的主要内容,如果未能解决你的问题,请参考以下文章
Angular 6 TypeError:无法读取未定义的属性(读取“长度”)错误
TypeError:无法读取未定义的属性“长度”(React,heroku)
jQuery Datatable Uncaught TypeError:无法读取未定义的属性“长度”
未捕获的TypeError:无法读取未定义数据表的属性“长度”