Reactjs can';t调用具有呈现函数的组件构造函数,该函数在for循环中返回null
我不知道为什么组件构造函数没有为循环调用 下面是我的代码Reactjs can';t调用具有呈现函数的组件构造函数,该函数在for循环中返回null,reactjs,Reactjs,我不知道为什么组件构造函数没有为循环调用 下面是我的代码 class Marker extends React.Component{ constructor(pros){ super(props) console.log('test') } render(){ null } } class Map extends React.Component{ render(){ <div>{t
class Marker extends React.Component{
constructor(pros){
super(props)
console.log('test')
}
render(){
null
}
}
class Map extends React.Component{
render(){
<div>{this._renderMarkers()}</div>
}
_renderMarkers(){
this.state.markers.map((item, index)=> {
return (
<div><Marker lat='xx' lng='xx' key={index}/></div>
)
}
}
}
类标记扩展了React.Component{
建造师(专业人员){
超级(道具)
console.log('test')
}
render(){
无效的
}
}
类映射扩展了React.Component{
render(){
{this.\u renderMarkers()}
}
_渲染器(){
this.state.markers.map((项,索引)=>{
返回(
)
}
}
}
当我在_renderMarkers()中只返回一个标记时,我可以显示已调用标记构造函数
但在for循环中,永远不会调用标记构造函数
_renderMarkers() {
return this.state.markers.map((item, index)=> {
return (
<div><Marker lat='xx' lng='xx' key={index}/></div>
)
}
}
我是如何解决这个问题的?给我一个好主意plz似乎永远不会在
\u renderMarkers
函数中返回映射数组。如果从不渲染React组件,则永远不会调用它们的构造函数
_renderMarkers() {
return this.state.markers.map((item, index)=> {
return (
<div><Marker lat='xx' lng='xx' key={index}/></div>
)
}
}
\u渲染器(){
返回this.state.markers.map((项,索引)=>{
返回(
)
}
}
哇,我觉得错过这样的东西太疯狂了。谢谢