@@ -8,6 +8,7 @@ class PostCreate extends Component {
88 super ( props )
99 this . handleSubmit = this . handleSubmit . bind ( this )
1010 this . handleInputChange = this . handleInputChange . bind ( this )
11+ this . handleDraftChange = this . handleDraftChange . bind ( this )
1112 this . clearForm = this . clearForm . bind ( this )
1213 this . postTitleRef = React . createRef ( )
1314 this . postContentRef = React . createRef ( )
@@ -53,20 +54,12 @@ class PostCreate extends Component {
5354
5455 handleSubmit ( event ) {
5556 event . preventDefault ( )
56- // console.log(this.state)
5757 let data = this . state
58- if ( data [ 'draft' ] === 'on' ) {
59- data [ 'draft' ] = true
60- } else {
61- data [ 'draft' ] = false
62- }
63- // console.log(data)
6458 this . createPost ( data )
6559 }
6660
6761 handleInputChange ( event ) {
6862 event . preventDefault ( )
69- console . log ( event . target . name , event . target . value )
7063 let key = event . target . name
7164 let value = event . target . value
7265 if ( key === 'title' ) {
@@ -79,6 +72,12 @@ class PostCreate extends Component {
7972 } )
8073 }
8174
75+ handleDraftChange ( ) {
76+ this . setState ( {
77+ draft : ! this . state . draft
78+ } )
79+ }
80+
8281 clearForm ( event ) {
8382 if ( event ) {
8483 event . preventDefault ( )
@@ -105,6 +104,7 @@ class PostCreate extends Component {
105104
106105 render ( ) {
107106 const { publish} = this . state
107+ let thisComp = this
108108 return (
109109 < form onSubmit = { this . handleSubmit } ref = { ( el ) => this . postCreateForm = el } >
110110 < div className = 'form-group' >
@@ -126,8 +126,9 @@ class PostCreate extends Component {
126126 </ div >
127127 < div className = 'form-group' >
128128 < label for = 'draft' >
129- < input type = 'checkbox' id = 'draft' name = 'draft' className = 'mr-2' onChange = { this . handleInputChange } />
129+ < input type = 'checkbox' checked = { this . state . draft } id = 'draft' name = 'draft' className = 'mr-2' onChange = { this . handleDraftChange } />
130130 Draft </ label >
131+ < button onClick = { ( event ) => { event . preventDefault ( ) ; this . handleDraftChange ( ) } } > Toggle Draft</ button >
131132 </ div >
132133 < div className = 'form-group' >
133134 < label for = 'publish' > Publish Date</ label >
@@ -140,7 +141,7 @@ class PostCreate extends Component {
140141 value = { publish }
141142 required = 'required' />
142143 </ div >
143- < button className = 'btn btn-primary' > Save</ button >
144+ < button type = 'submit' className = 'btn btn-primary' > Save</ button >
144145 < button className = 'btn btn-secondary' onClick = { this . clearForm } > Cancel</ button >
145146 </ form >
146147 )
0 commit comments