-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathWordRelay.jsx
78 lines (62 loc) · 1.88 KB
/
WordRelay.jsx
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
const React = require('react');
const { Component } = React; //React.component
class WordRelay extends Component {
state = {
word: 'Frank Kim',
value: '',
result: '',
};
onSubmitForm = (e) =>{
e.preventDefault();
if(this.state.word[this.state.word.length - 1] === this.state.value[0]){
this.setState({
result: '딩동댕!!!',
word: this.state.value,
value:'',
});
this.input.focus();
}else{
this.setState({
result: '땡',
value: '',
});
this.input.focus();
}
};
onChangeInput = (e) => {
this.setState({value: e.target.value})
}
input;
onRefInput = (c) =>{
this.input = c;
}
render(){
return (
<>
<div>{this.state.word}</div>
<form onSubmit={this.onSubmitForm}>
<input ref={this.onRefInput} value={this.state.value} onChange={this.onChangeInput}/>
<button>click!</button>
<h1>wow!!! interesting!!! </h1>
</form>
<div>{this.state.result}</div>
</>
)
}
}
module.exports = WordRelay;
// 파일을 쪼개는 경우
/*
******** const React = require('react'); ********
const { Component } = React; //React.component
******** module.exports = WordRelay; ********
꼭 써줘야 한다.
*/
// value와 onChange는 세트다. 그게 아니면 defaultValue{ }를 사용해야 한다.
// 자동으로 webpack 자동 빌드 설정 => npm i -D react-hot-loader & npm i -D webpack-dev-server 설치!!!!
/*
"scripts": {
"dev": "webpack-dev-server --hot"
},
webpack-dev 가 webpack.config.js를 읽고 => 빌드를 해준다. => 그리고 서버로 유지를 시켜준다.
*/