# Stripe Apps の DataField コンポーネント DateField コンポーネントを使用して、ユーザーから日付情報を収集します。 # v8 > This is a v8 for when app-sdk-version is 8. View the full page at https://docs.stripe.com/stripe-apps/components/datefield?app-sdk-version=8. `DateField` コンポーネントをアプリに追加するには、以下のようにします。 ```js import {DateField} from '@stripe/ui-extension-sdk/ui'; ``` 以下に、ラベルと説明が設定された `DateField` コンポーネントのプレビューを示します。 ### DateField のプロパティー | プロパティー | タイプ | | ---------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `defaultValue` | (オプション) `string | undefined` ユーザーが変更できる初期値を指定します。 | | `description` | (オプション) `string | undefined` コントロールのラベルの横にレンダリングされる説明テキスト。 | | `disabled` | (オプション) `boolean | undefined` 要素を無効化するかどうかを設定します。選択できなくなります。 | | `error` | (オプション) `string | undefined` コントロールの下に表示されるエラーテキスト。 | | `hiddenElements` | (オプション) `("label" | "description" | "error")[] | undefined` 指定した要素を視覚的に非表示にします。非表示の要素は引き続き存在しており、スクリーンリーダーに表示されます。 | | `invalid` | (オプション) `boolean | undefined` 要素が無効な状態であるかどうかを設定します。これは、表示専用のプロパティであり、フォーム送信を妨げるものではありません。 | | `label` | (オプション) `React.ReactNode` コントロールを説明するテキスト。表示され、クリック可能になります。 | | `onChange` | (オプション) `((event: { target: { value: string; }; }) => void) | undefined` 変更が有効な日付になった場合にのみ起動する onChange に似たイベント。`` と同じ動作。 | | `size` | (オプション) `("small" | "medium" | "large") | undefined` コンポーネントのサイズ。 | | `value` | (オプション) `string | undefined` 入力のテキストを制御します。このプロパティを渡すときには、渡された値を更新する `onChange` ハンドラも渡す必要があります。 | ## サイズ 各サイズの `DateField` は、同じサイズの `TextField` と一致します。ただし、`TextField` と同じ方法で日付入力の幅を広げることはできません。 ## エラー 日付に問題があることを示すエラーメッセージを指定できます。 ## 無効 ユーザーが変更できないようにする場合、`DateField` を無効にします。 ## 要素を非表示にする スクリーンリーダーのアクセシビリティーを維持しながら、ラベルや説明など、`DateField` コンポーネントの要素を視覚的に非表示にすることができます。 ## イベント `onChange` プロパティの動作は、ネイティブの `` HTML 要素と似ています。値が返されるのは、有効な日付である場合のみです。`onChange` ハンドラはキーストロークごとに呼び出されることはなく、`DateField` を[制御入力](https://reactjs.org/docs/forms.html#controlled-components)にすることはできません。 `onChange` の横にあるイベントのプロパティー (先頭文字は `on`) は、`DateField` コンポーネントの年、月、日の 3 つのセクションのそれぞれで独立して実行されます。 # v9 > This is a v9 for when app-sdk-version is 9. View the full page at https://docs.stripe.com/stripe-apps/components/datefield?app-sdk-version=9. `DateField` コンポーネントをアプリに追加するには、以下のようにします。 ```js import {DateField} from '@stripe/ui-extension-sdk/ui'; ``` 以下に、ラベルと説明が設定された `DateField` コンポーネントのプレビューを示します。 ### DateField のプロパティー | プロパティー | タイプ | | ---------------- | ----------------------------------------------------------------------------------------------------------------------- | | `defaultValue` | (オプション) `string | undefined` ユーザーが変更できる初期値を指定します。 | | `description` | (オプション) `string | undefined` コントロールのラベルの横にレンダリングされる説明テキスト。 | | `disabled` | (オプション) `boolean | undefined` 要素を無効化するかどうかを設定します。選択できなくなります。 | | `error` | (オプション) `string | undefined` コントロールの下に表示されるエラーテキスト。 | | `hiddenElements` | (オプション) `("label" | "description" | "error")[] | undefined` 指定した要素を視覚的に非表示にします。非表示の要素は引き続き存在しており、スクリーンリーダーに表示されます。 | | `invalid` | (オプション) `boolean | undefined` 要素が無効な状態であるかどうかを設定します。これは、表示専用のプロパティであり、フォーム送信を妨げるものではありません。 | | `label` | (オプション) `React.ReactNode` コントロールを説明するテキスト。表示され、クリック可能になります。 | | `onChange` | (オプション) `((event: string) => void) | undefined` | | `size` | (オプション) `("small" | "medium" | "large") | undefined` コンポーネントのサイズ。 | | `value` | (オプション) `string | undefined` 入力のテキストを制御します。このプロパティを渡すときには、渡された値を更新する `onChange` ハンドラも渡す必要があります。 | ## サイズ 各サイズの `DateField` は、同じサイズの `TextField` と一致します。ただし、`TextField` と同じ方法で日付入力の幅を広げることはできません。 ## エラー 日付に問題があることを示すエラーメッセージを指定できます。 ## 無効 ユーザーが変更できないようにする場合、`DateField` を無効にします。 ## 要素を非表示にする スクリーンリーダーのアクセシビリティーを維持しながら、ラベルや説明など、`DateField` コンポーネントの要素を視覚的に非表示にすることができます。 ## イベント `onChange` プロパティの動作は、ネイティブの `` HTML 要素と似ています。値が返されるのは、有効な日付である場合のみです。`onChange` ハンドラはキーストロークごとに呼び出されることはなく、`DateField` を[制御入力](https://reactjs.org/docs/forms.html#controlled-components)にすることはできません。 `onChange` の横にあるイベントのプロパティー (先頭文字は `on`) は、`DateField` コンポーネントの年、月、日の 3 つのセクションのそれぞれで独立して実行されます。 ## See also - [従うべき設計パターン](https://docs.stripe.com/stripe-apps/patterns.md) - [アプリのスタイル設定](https://docs.stripe.com/stripe-apps/style.md) - [UI テスト](https://docs.stripe.com/stripe-apps/ui-testing.md)