Googleドライブでの検索と同様に、ユーザーがリソースへのアクセス/コメント/編集ができるユーザーを制御できるように、私はReact-Selectマルチを使用して、リソースの所有者がリソースへのアクセスを許可したいユーザーを選ぶようにしています。フィルタを維持している間にクリア値を選択して反応を選択します
私がreact-selectで表示されたオプションをクリックすると、このオプションを許可されたユーザーのリスト(別のコンポーネントによって処理されるリスト)に追加します。この部分はうまくいきました。select(on)のonChangeハンドラを使用しました(下のコードを参照)。
export default class AddUsersForm extends Component {
PropTypes = {
onSubmit: PropTypes.func.isRequired,
usersList: PropTypes.array.isRequired, // List of all users in the company
usersInPermissions: PropTypes.array.isRequired, // Users who already have access to the resource
}
handleChange(users){
// Adds new user to the list of allowed users, an updated value for this.props.usersInPermissions will be received
this.props.onSubmit(users);
}
render() {
return (
<form>
<Select
name="users"
multi={true}
options={this.props.usersList.filter(user => !this.props.usersInPermissions.includes(user.id))}
onChange={(users) => this.handleChange(users)}
/>
</form>
);
}
}
私は立ち往生しています場所です:オプションが追加されていたら、テキストの最初のオプションを探している間、私は、ユーザーが潜在的に使用したフィルタを表示していきたいと思いフィールド。現在の動作では、フィルタは削除され、すべてのオプションがドロップダウンに表示されます。
React-Selectでこれを達成する簡単な方法はありますか?
多くの感謝!
私は値から削除したいですか?これを説明できますか? – Ved
https://github.com/JedWatson/react-select/blob/master/examples/src/components/Multiselect.jsを確認しましたか? – elmeister
@Ved私はちょうどそこに本当に混乱した、これは意味をなさない!だから私の唯一の問題は実際にそこにフィルタを保持している、あなたはこれを行う方法がある場合は知っていますか? – notten13