【React】초초보자:폼의 작성편
16311 단어 양식프로그래밍 공부 일기초보자React
소개
여러분 처음 뵙겠습니다.
엔지니어 경력 1년째, 현장 경험 제로의 약소 자칭 Web 엔지니어입니다.
교육에서 Vue를 사용하여 개발했습니다.
다른 JS 프레임워크도 만져보고 싶어지고, 이 기사의 작성에 이르렀던 대로입니다.
납치자의 예비 지식
· Vue를 사용하여 개발 한 적이있다.
· Progate에서 React IV까지 학습됨
개발 환경
· MacOS Catalina 버전 10.15.7
· Node.js v12.18.4
· Npm 6.14.6
이번에 만들고 싶은 것
React 의 사용법을 배우는데 있어서, 이번은 간단한 폼을 작성해 가겠지~.
제대로 입력치가 송신되고 있는지 확인하기 위해서 경고 표시도 시키는 응고~.
프로젝트 만들기
공식 씨가 추천하고 있는 방법으로 프로젝트를 만들어 가는군요~.
Create React App은 React를 배울 수있는 편안한 환경이며,
React에서 새로운 단일 페이지 응용 프로그램을 만드는 가장 좋은 방법입니다.
Create React App:
htps : // 그럼. Rea ctjs. 오 rg / 두 cs / c 레테 - 아-네 w- 리 아 c- p p. html # c Rete-Re-ct-p
React 프로젝트 만들기$ npx create-react-app react-form-app
npx는 난자이나라고 생각했지만, npm(5.6 이상) 들어가면 사용할 수 있는 툴인 것 같다.
프로젝트 시작
React 프로젝트 시작$ cd react-form-app
$ npm start
어쩐지 자동으로 브라우저 열고 샤레를 화면으로 온 【감동! ! 】
다음은 좋아하는 IDE (통합 개발 환경)로 프로젝트 파일을 열고
바로 구현해 가는 거야~.
양식 만들기
공식 씨의 방법을 참고로 엄청 간단한 폼을 만듭니다.
양식 : htps : // 그럼. Rea ctjs. rg/do cs/후우rms. HTML #이 tsby - fu sw w ぺr
App.jsimport React from 'react'
class App extends React.Component {
render() {
return (
<div className="App">
<form>
<label>
名前:
<input type="text" name="name" />
</label>
<input type="submit" value="送信" />
</form>
</div>
)
}
}
export default App
input 태그는 <input />
라는 식으로 뒤에 /
에 붙여야 한다.
이것이 JSX 기법이라는 녀석인가! !
외형이지만 생긴 응고.
onChange 이벤트
제출 후에도 값이 입력 양식에 남아있게 하려면,
입력 양식의 input 태그에 onChangeイベント
를 지정하여 입력 값을 가져옵니다.
Apps.js
constructor(props) {
super(props);
this.state = {name: ''};
this.handleChange = this.handleChange.bind(this); //これが無いと何かエラー出る
}
handleChange(event) {
this.setState({name: event.target.value}); //event.target.valueで入力値を取得し、stateを更新
}
render() {
return (
<div className="App">
<form>
<label>
名前:
<input
type="text"
value={this.state.name}
onChange={this.handleChange}
/>
</label>
<input type="submit" value="送信" />
</form>
</div>
)
}
constructor()
는 라이프 사이클 메소드입니다.render()
보다 먼저 호출되는 녀석이군요. (Vue로 말한다 created()
같은 녀석인가!!)
onSubmit 이벤트
이것만으로는 아직 송신 후에 입력값은 남지 않는다.
양식을 제출할 때 처리는 양식 태그에 onSubmitイベント
를 지정합니다.
Form.js
handleSubmit(event) {
alert(this.state.name + 'さん!!'); //アラートを表示
event.preventDefault();
}
render() {
return (
<div className="App">
<form onSubmit={this.handleSubmit}>
<label>
名前:
<input
type="text"
value={this.state.name}
onChange={this.handleChange}
/>
</label>
<input type="submit" value="送信" />
</form>
</div>
)
}
preventDefault()
는 이벤트를 취소하는 메소드입니다.
이번이라면, submit 이벤트가 가지는 페이지의 이동을 취소하고 있습니다.
요약
・더 깊은 내용의 기사 쓰고 싶었던… (첫 투고이기 때문에 용서해)
· Vue가 얼마나 JS 약자에게 친화적 인 프레임 워크인지 알았습니다.
App.jsimport React from 'react'
class App extends React.Component {
constructor(props) {
super(props);
this.state = {name: ''};
this.handleChange = this.handleChange.bind(this);
this.handleSubmit = this.handleSubmit.bind(this);
}
handleChange(event) {
this.setState({name: event.target.value});
}
handleSubmit(event) {
alert(this.state.name + 'さん!!');
event.preventDefault();
}
render() {
return (
<div className="App">
<form onSubmit={this.handleSubmit}>
<label>
名前:
<input
type="text"
value={this.state.name}
onChange={this.handleChange}
/>
</label>
<input type="submit" value="送信" />
</form>
</div>
)
}
}
export default App
참고 기사
· React 문의 양식 작성
· React에서 Uncaught TypeError: Cannot read property 'setState' of undefined 과 화난 경우의 대처법
· preventDefault() 정보
Reference
이 문제에 관하여(【React】초초보자:폼의 작성편), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/u_i_vs_world/items/d8f597f7c8a44f026fec
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
공식 씨가 추천하고 있는 방법으로 프로젝트를 만들어 가는군요~.
Create React App은 React를 배울 수있는 편안한 환경이며,
React에서 새로운 단일 페이지 응용 프로그램을 만드는 가장 좋은 방법입니다.
Create React App:
htps : // 그럼. Rea ctjs. 오 rg / 두 cs / c 레테 - 아-네 w- 리 아 c- p p. html # c Rete-Re-ct-p
React 프로젝트 만들기
$ npx create-react-app react-form-app
npx는 난자이나라고 생각했지만, npm(5.6 이상) 들어가면 사용할 수 있는 툴인 것 같다.
프로젝트 시작
React 프로젝트 시작$ cd react-form-app
$ npm start
어쩐지 자동으로 브라우저 열고 샤레를 화면으로 온 【감동! ! 】
다음은 좋아하는 IDE (통합 개발 환경)로 프로젝트 파일을 열고
바로 구현해 가는 거야~.
양식 만들기
공식 씨의 방법을 참고로 엄청 간단한 폼을 만듭니다.
양식 : htps : // 그럼. Rea ctjs. rg/do cs/후우rms. HTML #이 tsby - fu sw w ぺr
App.jsimport React from 'react'
class App extends React.Component {
render() {
return (
<div className="App">
<form>
<label>
名前:
<input type="text" name="name" />
</label>
<input type="submit" value="送信" />
</form>
</div>
)
}
}
export default App
input 태그는 <input />
라는 식으로 뒤에 /
에 붙여야 한다.
이것이 JSX 기법이라는 녀석인가! !
외형이지만 생긴 응고.
onChange 이벤트
제출 후에도 값이 입력 양식에 남아있게 하려면,
입력 양식의 input 태그에 onChangeイベント
를 지정하여 입력 값을 가져옵니다.
Apps.js
constructor(props) {
super(props);
this.state = {name: ''};
this.handleChange = this.handleChange.bind(this); //これが無いと何かエラー出る
}
handleChange(event) {
this.setState({name: event.target.value}); //event.target.valueで入力値を取得し、stateを更新
}
render() {
return (
<div className="App">
<form>
<label>
名前:
<input
type="text"
value={this.state.name}
onChange={this.handleChange}
/>
</label>
<input type="submit" value="送信" />
</form>
</div>
)
}
constructor()
는 라이프 사이클 메소드입니다.render()
보다 먼저 호출되는 녀석이군요. (Vue로 말한다 created()
같은 녀석인가!!)
onSubmit 이벤트
이것만으로는 아직 송신 후에 입력값은 남지 않는다.
양식을 제출할 때 처리는 양식 태그에 onSubmitイベント
를 지정합니다.
Form.js
handleSubmit(event) {
alert(this.state.name + 'さん!!'); //アラートを表示
event.preventDefault();
}
render() {
return (
<div className="App">
<form onSubmit={this.handleSubmit}>
<label>
名前:
<input
type="text"
value={this.state.name}
onChange={this.handleChange}
/>
</label>
<input type="submit" value="送信" />
</form>
</div>
)
}
preventDefault()
는 이벤트를 취소하는 메소드입니다.
이번이라면, submit 이벤트가 가지는 페이지의 이동을 취소하고 있습니다.
요약
・더 깊은 내용의 기사 쓰고 싶었던… (첫 투고이기 때문에 용서해)
· Vue가 얼마나 JS 약자에게 친화적 인 프레임 워크인지 알았습니다.
App.jsimport React from 'react'
class App extends React.Component {
constructor(props) {
super(props);
this.state = {name: ''};
this.handleChange = this.handleChange.bind(this);
this.handleSubmit = this.handleSubmit.bind(this);
}
handleChange(event) {
this.setState({name: event.target.value});
}
handleSubmit(event) {
alert(this.state.name + 'さん!!');
event.preventDefault();
}
render() {
return (
<div className="App">
<form onSubmit={this.handleSubmit}>
<label>
名前:
<input
type="text"
value={this.state.name}
onChange={this.handleChange}
/>
</label>
<input type="submit" value="送信" />
</form>
</div>
)
}
}
export default App
참고 기사
· React 문의 양식 작성
· React에서 Uncaught TypeError: Cannot read property 'setState' of undefined 과 화난 경우의 대처법
· preventDefault() 정보
Reference
이 문제에 관하여(【React】초초보자:폼의 작성편), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/u_i_vs_world/items/d8f597f7c8a44f026fec
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
$ cd react-form-app
$ npm start
공식 씨의 방법을 참고로 엄청 간단한 폼을 만듭니다.
양식 : htps : // 그럼. Rea ctjs. rg/do cs/후우rms. HTML #이 tsby - fu sw w ぺr
App.js
import React from 'react'
class App extends React.Component {
render() {
return (
<div className="App">
<form>
<label>
名前:
<input type="text" name="name" />
</label>
<input type="submit" value="送信" />
</form>
</div>
)
}
}
export default App
input 태그는
<input />
라는 식으로 뒤에 /
에 붙여야 한다.이것이 JSX 기법이라는 녀석인가! !
외형이지만 생긴 응고.
onChange 이벤트
제출 후에도 값이 입력 양식에 남아있게 하려면,
입력 양식의 input 태그에
onChangeイベント
를 지정하여 입력 값을 가져옵니다.Apps.js
constructor(props) {
super(props);
this.state = {name: ''};
this.handleChange = this.handleChange.bind(this); //これが無いと何かエラー出る
}
handleChange(event) {
this.setState({name: event.target.value}); //event.target.valueで入力値を取得し、stateを更新
}
render() {
return (
<div className="App">
<form>
<label>
名前:
<input
type="text"
value={this.state.name}
onChange={this.handleChange}
/>
</label>
<input type="submit" value="送信" />
</form>
</div>
)
}
constructor()
는 라이프 사이클 메소드입니다.render()
보다 먼저 호출되는 녀석이군요. (Vue로 말한다 created()
같은 녀석인가!!)onSubmit 이벤트
이것만으로는 아직 송신 후에 입력값은 남지 않는다.
양식을 제출할 때 처리는 양식 태그에
onSubmitイベント
를 지정합니다.Form.js
handleSubmit(event) {
alert(this.state.name + 'さん!!'); //アラートを表示
event.preventDefault();
}
render() {
return (
<div className="App">
<form onSubmit={this.handleSubmit}>
<label>
名前:
<input
type="text"
value={this.state.name}
onChange={this.handleChange}
/>
</label>
<input type="submit" value="送信" />
</form>
</div>
)
}
preventDefault()
는 이벤트를 취소하는 메소드입니다.이번이라면, submit 이벤트가 가지는 페이지의 이동을 취소하고 있습니다.
요약
・더 깊은 내용의 기사 쓰고 싶었던… (첫 투고이기 때문에 용서해)
· Vue가 얼마나 JS 약자에게 친화적 인 프레임 워크인지 알았습니다.
App.jsimport React from 'react'
class App extends React.Component {
constructor(props) {
super(props);
this.state = {name: ''};
this.handleChange = this.handleChange.bind(this);
this.handleSubmit = this.handleSubmit.bind(this);
}
handleChange(event) {
this.setState({name: event.target.value});
}
handleSubmit(event) {
alert(this.state.name + 'さん!!');
event.preventDefault();
}
render() {
return (
<div className="App">
<form onSubmit={this.handleSubmit}>
<label>
名前:
<input
type="text"
value={this.state.name}
onChange={this.handleChange}
/>
</label>
<input type="submit" value="送信" />
</form>
</div>
)
}
}
export default App
참고 기사
· React 문의 양식 작성
· React에서 Uncaught TypeError: Cannot read property 'setState' of undefined 과 화난 경우의 대처법
· preventDefault() 정보
Reference
이 문제에 관하여(【React】초초보자:폼의 작성편), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/u_i_vs_world/items/d8f597f7c8a44f026fec
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
import React from 'react'
class App extends React.Component {
constructor(props) {
super(props);
this.state = {name: ''};
this.handleChange = this.handleChange.bind(this);
this.handleSubmit = this.handleSubmit.bind(this);
}
handleChange(event) {
this.setState({name: event.target.value});
}
handleSubmit(event) {
alert(this.state.name + 'さん!!');
event.preventDefault();
}
render() {
return (
<div className="App">
<form onSubmit={this.handleSubmit}>
<label>
名前:
<input
type="text"
value={this.state.name}
onChange={this.handleChange}
/>
</label>
<input type="submit" value="送信" />
</form>
</div>
)
}
}
export default App
· React 문의 양식 작성
· React에서 Uncaught TypeError: Cannot read property 'setState' of undefined 과 화난 경우의 대처법
· preventDefault() 정보
Reference
이 문제에 관하여(【React】초초보자:폼의 작성편), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/u_i_vs_world/items/d8f597f7c8a44f026fec텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)