diff --git a/frontend/src/components/dialog/manage-members-dialog.js b/frontend/src/components/dialog/manage-members-dialog.js index f7dd454ea9..d6e771597e 100644 --- a/frontend/src/components/dialog/manage-members-dialog.js +++ b/frontend/src/components/dialog/manage-members-dialog.js @@ -23,7 +23,6 @@ class ManageMembersDialog extends React.Component { groupMembers: [], selectedOption: null, errMessage: [], - clearSelect: false, }; } @@ -31,7 +30,6 @@ class ManageMembersDialog extends React.Component { this.setState({ selectedOption: option, errMessage: [], - clearSelect: false, }); } @@ -44,8 +42,8 @@ class ManageMembersDialog extends React.Component { this.onGroupMembersChange(); this.setState({ selectedOption: null, - clearSelect: true, }); + this.refs.userSelect.clearSelect(); if (res.data.failed.length > 0) { this.setState({ errMessage: res.data.failed @@ -84,7 +82,7 @@ class ManageMembersDialog extends React.Component { diff --git a/frontend/src/models/user-select.js b/frontend/src/models/user-select.js index fd5570fc29..2eb699c2cc 100644 --- a/frontend/src/models/user-select.js +++ b/frontend/src/models/user-select.js @@ -7,7 +7,6 @@ import { gettext } from '../utils/constants'; const propTypes = { placeholder: PropTypes.string.isRequired, onSelectChange: PropTypes.func.isRequired, - clearSelect: PropTypes.bool.isRequired, isMulti: PropTypes.bool.isRequired, className: PropTypes.string.isRequired, }; @@ -46,10 +45,8 @@ class UserSelect extends React.Component { } } - componentWillReceiveProps(nextProps) { - if (nextProps.clearSelect === true && this.props.clearSelect === false) { - this.refs.userSelect.select.onChange([], { action: 'clear' }); - } + clearSelect = () => { + this.refs.userSelect.select.onChange([], { action: 'clear' }); } render() {