无法通过React Router传递道具

问题描述 投票:0回答:1

我有类GetProfile扩展React.Component并返回渲染状态。我想用反应路由器获取道具GetProfile但我得到了消息

元素类型无效:期望一个字符串(对于内置组件)或一个类/函数(对于复合组件)但得到:undefined。您可能忘记从其定义的文件中导出组件,或者您可能混淆了默认导入和命名导入。

class GetProfile extends React.Component{
....
render(){
        return(
            <div>
                {React.cloneElement(this.props.children, { 
                        data: this.state.data, 
                        department : this.state.department 
                    })
                }
            </div>
        )
    }
}
export default GetProfile;

在Router.js这个我的代码

import Home from './components/Home';
import GetProfile from './action/GetProfile';

....
<GetProfile>
   <Authenticated exact path="/home" render={(props) => <Home {...props.data}/>}/>
</GetProfile>
....
javascript reactjs react-props
1个回答
2
投票
try by importing React
import React from 'react'
class GetProfile extends React.Component{
    ....
    render(){
        return(
            <div>
                {React.cloneElement(this.props.children, { 
                    data: this.state.data, 
                    department : this.state.department 
                })
            }
        </div>
    )
  }
 }
 export default GetProfile;
© www.soinside.com 2019 - 2024. All rights reserved.