Material-ui: [TextField] type =数値が欠落している最小、最大、ステップTypescriptタイプ

作成日 2017年11月27日  ·  8コメント  ·  ソース: mui-org/material-ui

  • [x]このリポジトリの問題を検索し

予想される行動

<TextField type="number" min="0" max="10" step="1" />はTypescriptでコンパイルする必要があります

現在の動作

最小で次のTypescriptエラーを受け取ります。最大とステップで同様です: [ts] Property 'min' does not exist on type 'IntrinsicAttributes & TextFieldProps & { children?: ReactNode; }'.

あなたの環境

| 技術| バージョン|
| -------------- | --------- |
| 素材-UI | 1.0.0-beta.21 |
| React | 16.0.0 |
| Typescript | 2.6.1 |

bug 🐛 TextField typescript

最も参考になるコメント

これは機能しますか?

<TextField type="number" inputProps={{ min: "0", max: "10", step: "1" }} />

全てのコメント8件

これは機能しますか?

<TextField type="number" inputProps={{ min: "0", max: "10", step: "1" }} />

はい、それは機能します。 ただし、 inputPropsは、何かが含まれているオブジェクトを受け入れるため、この方法で型システムを効果的にオプトアウトしています。

はい、それは機能します。 ただし、 inputPropsは、何かが含まれているオブジェクトを受け入れるため、この方法で型システムを効果的にオプトアウトしています。

良い点です。 inputProps入力を修正するために#9321を開きました。

inputPropsは、 InputComponentで_何でも_できるようにすることを目的としています。 これにより、外部コンポーネントとのオープンな統合が可能になりますが、残念ながら、タイプがわからない、またはない場合があります。

例:

import * as MaskedInput from 'react-text-mask'

      <TextField
        InputProps={{
          inputComponent: MaskedInput,
        }}
        inputProps={{
          guide: false,
          mask,
          placeholderChar: '\u2000',
        }}
        type="tel"
        value={value}
      />

したがって、同じシナリオで強く型付けされたinputPropsを回避する代わりに、次のようになります(@pelotomに感謝)

import { InputProps as MuiInputProps } from 'material-ui/Input'

      <TextField
        InputProps={{
          inputComponent: (inputProps: MuiInputProps) => (
            <MaskedInput {...inputProps} guide={false} mask={mask} placeholderChar="\u2000" />
          ),
        }}
        type="tel"
        value={value}
      />

@pelotomは、このAPIを再検討するための新しい提案/問題を提出しています。

@rosskevin
MaskedInputが定義されていません。
マスクが定義されていません
:(

これは非常に複雑な回避策のようです

これらをTextFieldレベルで定義して、どこでもロジックを繰り返すことなく検証を実行できるようにすることをお勧めします。 最小/最大/ステップ要件のある数値フィールドに使用するたびにTextFieldを拡張する必要はありません。

このページは役に立ちましたか?
0 / 5 - 0 評価

関連する問題

ghost picture ghost  ·  3コメント

ryanflorence picture ryanflorence  ·  3コメント

FranBran picture FranBran  ·  3コメント

revskill10 picture revskill10  ·  3コメント

reflog picture reflog  ·  3コメント