childrenWithProps:未定义的JS React

时间:2018-12-21 12:49:24

标签: javascript reactjs

  GalleryPhotosVideos.js
class GalleryPhotosVideos extends React.Component {
        constructor(props) {
            super(props);
            this.state = {
                data3
            };
          }
        render (){
        const childrenWithProps = React.Children.map(this.props.children, child =>  
                React.cloneElement(child, {
                  albums: this.state.data3,
                })
             );
     return(
        <div style={galleryPhotos}>
                    {childrenWithProps}
        </div>
           )
        }
    }


 Content.js
     import { Switch, Route} from 'react-router-dom'

     <Switch>
         <Route exact path="/albums"  component={Albums} />
         <Route path="/albums/:albumName" component={Album} />
         <Route path="/albums/:albumName/:photoId" component={Photo} />
    </Switch> 

在这种情况下,我想获取相册,而不是得到childrenWithProps:未定义 什么也没出现。在内容的原始版本中,代替了,但是使用BrowserRouter无效,因此我进行了更改,但是它根本没有提供任何内容,或者没有人知道如何更改它吗?

1 个答案:

答案 0 :(得分:1)

childrenWithProps是元素数组。您应该使用

return(
    <div style={galleryPhotos}>
                {childrenWithProps.map(childrenElement => childrenElement)}
    </div>
       )

这样您的元素将与道具一一呈现。