Comparing version 0.0.31 to 0.0.32
@@ -63,3 +63,3 @@ 'use strict'; | ||
key: 'setFormItem', | ||
value: function setFormItem(item) { | ||
value: function setFormItem(item, firstTime) { | ||
var formItems = this.state.formItems; | ||
@@ -76,7 +76,9 @@ | ||
this.setState(function (prevState) { | ||
return { | ||
totalValidations: prevState.totalValidations + (item.validations ? item.validations.length : 0) | ||
}; | ||
}); | ||
if (firstTime) { | ||
this.setState(function (prevState) { | ||
return { | ||
totalValidations: prevState.totalValidations + (item.validations ? item.validations.length : 0) | ||
}; | ||
}); | ||
} | ||
} | ||
@@ -281,3 +283,3 @@ }, { | ||
_this4.props.store.setFormItem(_this4.props); | ||
_this4.props.store.setFormItem(_this4.props, 1); | ||
return _this4; | ||
@@ -332,3 +334,3 @@ } | ||
_this5.props.store.setFormItem(_this5.props); | ||
_this5.props.store.setFormItem(_this5.props, 1); | ||
return _this5; | ||
@@ -387,3 +389,3 @@ } | ||
_this6.props.store.setFormItem(_this6.props); | ||
_this6.props.store.setFormItem(_this6.props, 1); | ||
return _this6; | ||
@@ -390,0 +392,0 @@ } |
@@ -59,3 +59,4 @@ import React from 'react' | ||
this.state = { | ||
selectDefaultValue: 'yes' | ||
yesOrNo: 'yes', | ||
username: 'john' | ||
} | ||
@@ -65,3 +66,3 @@ | ||
this.setState({ | ||
selectDefaultValue: 'no' | ||
yesOrNo: 'no' | ||
}) | ||
@@ -99,2 +100,14 @@ } | ||
handleInput (e) { | ||
const value = e.target.value | ||
this.setState({ username: value }) | ||
console.log('handleInput', value) | ||
} | ||
handleSelect (e) { | ||
const value = e.target.value | ||
this.setState({ yesOrNo: value, username: '2' }) | ||
console.log('handleSelect', value) | ||
} | ||
render () { | ||
@@ -126,2 +139,4 @@ return ( | ||
placeholder='username' | ||
value={this.state.username} | ||
onChange={this.handleInput.bind(this)} | ||
validations={validations.username} /> | ||
@@ -157,3 +172,4 @@ </div> | ||
name='yesOrNo' | ||
value={this.state.selectDefaultValue} | ||
value={this.state.yesOrNo} | ||
onChange={this.handleSelect.bind(this)} | ||
validations={validations.yesOrNo}> | ||
@@ -160,0 +176,0 @@ <option value=''>select</option> |
{ | ||
"name": "recassfov", | ||
"version": "0.0.31", | ||
"version": "0.0.32", | ||
"description": "React client and server side form validation", | ||
@@ -5,0 +5,0 @@ "main": "./build/Recassfov.js", |
@@ -26,3 +26,3 @@ import React from 'react' | ||
setFormItem (item) { | ||
setFormItem (item, firstTime) { | ||
const formItems = this.state.formItems | ||
@@ -39,5 +39,7 @@ | ||
this.setState((prevState) => ({ | ||
totalValidations: prevState.totalValidations + (item.validations ? item.validations.length : 0) | ||
})) | ||
if (firstTime) { | ||
this.setState((prevState) => ({ | ||
totalValidations: prevState.totalValidations + (item.validations ? item.validations.length : 0) | ||
})) | ||
} | ||
} | ||
@@ -241,3 +243,3 @@ | ||
super(props) | ||
this.props.store.setFormItem(this.props) | ||
this.props.store.setFormItem(this.props, 1) | ||
} | ||
@@ -272,3 +274,3 @@ | ||
super(props) | ||
this.props.store.setFormItem(this.props) | ||
this.props.store.setFormItem(this.props, 1) | ||
} | ||
@@ -305,3 +307,3 @@ | ||
super(props) | ||
this.props.store.setFormItem(this.props) | ||
this.props.store.setFormItem(this.props, 1) | ||
} | ||
@@ -308,0 +310,0 @@ |
176031
897