私はボタンをクリックすると、別のフォームに置き換えた後にフォームを作成しようとしています。私はこのために "リンク"を使用しようとしましたが、ボタンをクリックした後、別のフォームが最初のフォームの中に表示されます。これを修正するために私のコードを変更するには?React forms change
マイApp.js:
import React, { Component } from 'react';
import './App.css';
import Login from "./Login";
class App extends Component {
render() {
return (
<div className="App">
<Login />
</div>
);
}
}
export default App;
マイLogin.js:
import React from 'react';
import CreateUser from "./CreateUser";
import GetUser from "./GetUser";
import { BrowserRouter as Router, Link, Route} from 'react-router-dom';
export default class Login extends React.Component {
state = {
email: '',
password: '',
};
change = e => {
this.setState({
[e.target.name]: e.target.value
});
};
onSubmit = (e) => {
e.preventDefault();
console.log(this.state);
};
render() {
return (
<form>
<br />
Login
<br />
<br />
<input
name="email"
placeholder='email'
value={this.state.email}
onChange={e => this.change(e)}
/>
<br />
<br />
<input
name="password"
type='password'
placeholder='password'
value={this.state.password}
onChange={e => this.change(e)}
/>
<br/ >
<br/ >
<Router>
<div>
<button onClick={e => this.onSubmit(e)}>
<Link to="/GetUser">Login</Link>
<Route exact path="/GetUser" component={GetUser}/>
</ button>
<br/ >
<br/ >
<button onClick={e => this.onSubmit(e)}>
<Link to="/CreateUser">Sign Up</Link>
<Route exact path="/CreateUser" component={CreateUser}/>
</button>
</div>
</Router>
</form>
);
}
}
私がログインボタンをクリックすると、GETUSERフォームはログインフォームの内側に表示されますが、私はGETUSERフォームを置き換えたいですログインフォーム。
Thxをすべて、 エドゥアルド・グリ