Reactの選択コントロール。最初はKeyStoneJSで使用するために構築されました。
ライブデモと包括的なドキュメントについては、React-select.comを参照してください。
react-select
ThinkmillとAtlassianによって資金提供されています。私たちは、コミュニティによって継続的にサポートされているオープンソースプロジェクトです。
React Selectは、自分にとって重要な部品をカスタマイズすることを止めることなく、箱から出して作業するだけの強力な選択コンポーネントを開発するのに役立ちます。
このコンポーネントの背後にあるストーリーについては、JedのTalk at React Conf 2019 -Building React Selectをご覧ください
機能は次のとおりです。
React-Selectを使用する最も簡単な方法は、npmからインストールし、Webpackを使用してアプリに組み込むことです。
yarn add react-select
次に、アプリで使用します。
import React , { useState } from 'react' ;
import Select from 'react-select' ;
const options = [
{ value : 'chocolate' , label : 'Chocolate' } ,
{ value : 'strawberry' , label : 'Strawberry' } ,
{ value : 'vanilla' , label : 'Vanilla' } ,
] ;
export default function App ( ) {
const [ selectedOption , setSelectedOption ] = useState ( null ) ;
return (
< div className = "App" >
< Select
defaultValue = { selectedOption }
onChange = { setSelectedOption }
options = { options }
/ >
< / div >
) ;
}
指定したい一般的な小道具は次のとおりです。
autoFocus
- マウント時にコントロールに焦点を合わせますclassName
クラス名をコントロールに適用しますclassNamePrefix
指定されたプレフィックスを使用して内部要素にクラス名を適用しますisDisabled
コントロールを無効にしますisMulti
ユーザーが複数の値を選択できるようにしますisSearchable
ユーザーがマッチングオプションを検索できるようにしますname
- 現在の値を含むこの名前でHTML入力を生成しますonChange
-Eventsの変更を購読しますoptions
- ユーザーが選択できるオプションを指定しますplaceholder
- オプションが選択されていないときに表示されるテキストを変更しますnoOptionsMessage
-({inputValue:string})=> string | null-オプションがないときに表示するテキストvalue
- 現在の値を制御しますProps React-Selectサポートに関する完全なドキュメントについては、Propsドキュメントを参照してください。
それらに値を提供することにより、次の小道具を制御できます。そうしないと、React-Selectがそれらを管理します。
value
/ onChange
コントロールの現在の値を指定しますmenuIsOpen
/ onMenuOpen
/ onMenuClose
メニューが開いているかどうかを制御するinputValue
/ onInputChange
検索入力の値を制御します(これにより利用可能なオプションが更新されます)これらの小道具を提供しない場合、それらが管理する状態の初期値を設定できます。
defaultValue
コントロールの初期値を設定しますdefaultMenuIsOpen
メニューの初期オープン値を設定しますdefaultInputValue
検索入力の初期値を設定しますReact-Selectは2つのパブリック方法を公開します。
focus()
- プログラムでコントロールをフォーカスしますblur()
- プログラムでコントロールをぼかします詳細については、以下を確認してください。
V5リリースは、JavaScriptからTypeScriptへの書き換えを表します。 V4以前のリリースと以前のリリースのタイプは、@Typesで入手できます。 V5で始まるタイプを使用する方法については、TypeScriptガイドを参照してください。
このプロジェクトに貢献してくれたすべての人に感謝します。それはワイルドライドでした。
React Selectが好きなら、Twitterで私をフォローする必要があります!
ジョス・マッキソン、チャールズ・リー、ベン・コノリー、トム・ウォーカー、ネイサン・ビエマ、エリック・ボノウ、エマ・ハミルトン、デイブ・ブラザーズ、ブライアン・ヴォーン、および他の多くの貢献者とともにこれを可能にしたアトラシアン・デザイン・システムチーム
MITライセンス。 Copyright(c)Jed Watson 2022。