diff options
| author | Yuval Adam <yuval@y3xz.com> | 2015-12-09 00:33:49 +0200 |
|---|---|---|
| committer | Yuval Adam <yuval@y3xz.com> | 2015-12-09 00:34:05 +0200 |
| commit | a358d615529015f0161754f66aa0fd150f915eaf (patch) | |
| tree | 60f3976b4aabd03d3d4f0d50061bcfdec2bd3557 | |
| parent | a4ed62da476682083b8a6c30ef768e9619e5b345 (diff) | |
IPAddress component with changing state
| -rw-r--r-- | index.js | 38 |
1 files changed, 29 insertions, 9 deletions
@@ -3,16 +3,36 @@ import './style.css' import React from 'react' import ReactDOM from 'react-dom' -class Note extends React.Component { +class IPAddress extends React.Component { + + constructor(props) { + super(props) + this.state = { + octets: [10, 88, 135, 24], + cidr: 36, + } + } + + handleChange = (event) => { + var octets = this.state.octets + octets[+event.target.attributes['data-octet'].value] = +event.target.value + this.setState({ + octets: octets + }) + } + render() { - return <div>Hai!</div> + return <form> + <input type="text" data-octet="0" onChange={this.handleChange} value={this.state.octets[0]}/>. + <input type="text" data-octet="1" onChange={this.handleChange} value={this.state.octets[1]}/>. + <input type="text" data-octet="2" onChange={this.handleChange} value={this.state.octets[2]}/>. + <input type="text" data-octet="3" onChange={this.handleChange} value={this.state.octets[3]}/>/ + <input type="text" onChange={this.handleChange} value={this.state.cidr}/> + <h2></h2> + </form> } } -main(); - -function main() { - const app = document.createElement('div') - document.body.appendChild(app) - ReactDOM.render(<Note />, app) -}
\ No newline at end of file +const app = document.createElement('div') +document.body.appendChild(app) +ReactDOM.render(<IPAddress />, app) |
