diff --git a/js/components/ascribe_forms/input_textarea_toggable.js b/js/components/ascribe_forms/input_textarea_toggable.js index ac3994a7..e6da5282 100644 --- a/js/components/ascribe_forms/input_textarea_toggable.js +++ b/js/components/ascribe_forms/input_textarea_toggable.js @@ -15,10 +15,32 @@ let InputTextAreaToggable = React.createClass({ getInitialState() { return { - value: this.props.defaultValue + value: null }; }, + componentDidUpdate(prevProps, prevState) { + if(this.state.value !== prevState.value) { + this.handleChange({ + target: { + value: this.state.value + } + }); + } + + if(!this.state.value && this.props.defaultValue) { + this.handleChange({ + target: { + value: this.props.defaultValue + } + }); + } + }, + + componentWillUnmount() { + this.setState({value: null}); + }, + handleChange(event) { this.setState({value: event.target.value}); this.props.onChange(event);