標準のPropsインターフェースをパブリックとして定義すると、コンポーネントの独自のカスタムバージョンを作成するときにProps定義を再利用できます。
たとえば、ログインコンポーネントを作成するときは、次のことを行う必要があります。
import { FormComponentProps } from 'antd/lib/form/Form'
class Login extends React.Component<{} & FormComponentProps, {}> {
render() {
// some render code
}
}
しかし、おそらく次の方が良いでしょう:
import { FormComponentProps } from 'antd'
class Login extends React.Component<{} & FormComponentProps, {}> {
render() {
// some render code
}
}
少なくとも:
import { FormComponentProps } from 'antd/lib/form'
class Login extends React.Component<{} & FormComponentProps, {}> {
render() {
// some render code
}
}
このTSベースのUIパッケージと同じように:ブループリント
以下で十分だと思います。
import { FormComponentProps } from 'antd/lib/form'
class Login extends React.Component<{} & FormComponentProps, {}> {
render() {
// some render code
}
}
最初のものの方がいいと思います。
2番目の方法を選択するのは、最初に公開されたものもインターフェイスになる可能性があるためですが、これらのインターフェイスはTypeScriptを使用する場合に非常に便利であり、TSを使用しない人は単にそれらを表示しません。
TSで記述されたフレームワークの多くは、インターフェイスを最も外側に公開し、問題を検出しません。
もちろん、2番目の方法でニーズを満たすことができます。 この問題の目的は、インターフェースの公開された場所を統一することです。 現在の状況では、 lib/[component name]/
フォルダー内のインターフェイスの場所は予測できません。
しかし、私はまだ最初のものが採用されることを願っています、ありがとう。
こんにちは、私はなぜ私のために働いていないのか理解しようとしていますが、私はこのエラーがありますnode_modules / antd / lib / form / index "'にはエクスポートされたメンバー' FormComponentProps 'がありません。
私の回避策は、 'antd / lib / form / Form'から{FormComponentProps}をインポートすることでした。
何が間違っているのですか?
@DavidNorena
import { FormComponentProps } from 'antd/lib/form
を試してみても、エラーが発生するということですか?
もちろん、これはエラーです。 FormComponentProps
がlib/form
ディレクトリに公開されていないため、この問題を送信します:)
@newraina ahhhh今私はそれを手に入れました! :D申し訳ありませんが、その間、import {FormComponentProps} from'antd / lib / form / Form 'を使用します。 OK ?
@DavidNorenaはい
あなたはこれのために私たちを助けることができます。
最も参考になるコメント
最初のものの方がいいと思います。
2番目の方法を選択するのは、最初に公開されたものもインターフェイスになる可能性があるためですが、これらのインターフェイスはTypeScriptを使用する場合に非常に便利であり、TSを使用しない人は単にそれらを表示しません。
TSで記述されたフレームワークの多くは、インターフェイスを最も外側に公開し、問題を検出しません。
もちろん、2番目の方法でニーズを満たすことができます。 この問題の目的は、インターフェースの公開された場所を統一することです。 現在の状況では、
lib/[component name]/
フォルダー内のインターフェイスの場所は予測できません。しかし、私はまだ最初のものが採用されることを願っています、ありがとう。