diff --git a/package.json b/package.json index 8a55947..2c33c92 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "react-native-prompt", - "version": "1.0.0", + "version": "1.0.1", "description": "A cross-platform prompt component for React Native.", "repository": { "type": "git", diff --git a/src/Prompt.js b/src/Prompt.js index d778d0a..ece8f44 100644 --- a/src/Prompt.js +++ b/src/Prompt.js @@ -1,4 +1,5 @@ -import React, { Component, PropTypes } from 'react'; +import React, { Component } from 'react'; +import PropTypes from 'prop-types'; import { Modal, Platform, @@ -60,9 +61,18 @@ export default class Prompt extends Component { this.setState({value: this.props.defaultValue}); } - componentWillReceiveProps(nextProps) { + /*componentWillReceiveProps(nextProps) { const { visible, defaultValue } = nextProps; - this.setState({ visible, value:defaultValue }); + if(visible !== this.props.visible && visible) { + this.setState({ visible, value: defaultValue }); + } + }*/ + static getDerivedStateFromProps(nextProps, prevState) { + const { visible, defaultValue } = nextProps; + if(visible !== nextProps.visible && visible) { + return { visible: defaultValue }; + } + return null; } _onChangeText = (value) => { @@ -114,6 +124,7 @@ export default class Prompt extends Component {