我是新来的响应者,我想要实现的是使用laravel中的react组件进行用户登录。
https://github.com/000kelvin/laravel-react-authentication
我遵循了此步骤,并安装了所有内容。当我运行此项目时,我似乎在获取有关prop的错误。终端要求我更新已经更新的react和react-dom
Laravel 5.8;npm 6.4.1;[email protected];[email protected]
import LoginContainer from './LoginContainer';
import {withRouter} from "react-router-dom";
class Login extends Component {
constructor(props) {
super(props);
this.state = {
redirect: props.location,
};
}
render() {
return (
<div className="content">
<LoginContainer redirect={this.state.redirect} />
</div>
)
}
}
export default withRouter(Login)
Router.js看起来像这样:
import React from "react";
import { BrowserRouter, Link, Route, Switch } from "react-router-dom";
import Home from "./components/Home/Home";
import Login from "./views/Login/Login";
import Register from "./views/Register/Register";
import NotFound from "./views/NotFound/NotFound";
// User is LoggedIn
import PrivateRoute from "./PrivateRoute";
import Dashboard from "./views/user/Dashboard/Dashboard";
const Main = () => (
<Switch>
<Route exact path="/" component={Home} />
<Route path="/login" component={Login} />
<Route path="/register" component={Register} />
<PrivateRoute path="/dashboard" component={Dashboard} />
<Route component={NotFound} />
</Switch>
);
export default Main;
显示此错误:
警告:道具类型失败:提供给的道具'组件'无效'路线':该道具不是有效的React组件在途中(由Testlog创建)在测试日志中
未捕获的不变变量:元素类型无效:预期为字符串(对于内置组件)或类/函数(用于复合组件),但得到了:>对象。您可能忘记了从定义的文件中导出您的组件,或者您可能混淆了默认导入和命名导入。
尝试使用
<Route path="/login" component={props => <Login {...props} />}/>
在您的路线上