コンストラクタ内のオブジェクトを使用せずに状態を作成することはできますか?Reactで動的に状態を作成する方法は?
私は動的にコンポーネント内に新しい状態を動的に作成する必要があります。どんな勧告?
interface IComponentState {
dynamicState: any
}
をして、あなたはこのdynamicState .... またはそれに任意の数のオプションに任意のオブジェクトをASSINGすることができます..:
コンストラクタ内のオブジェクトを使用せずに状態を作成することはできますか?Reactで動的に状態を作成する方法は?
私は動的にコンポーネント内に新しい状態を動的に作成する必要があります。どんな勧告?
interface IComponentState {
dynamicState: any
}
をして、あなたはこのdynamicState .... またはそれに任意の数のオプションに任意のオブジェクトをASSINGすることができます..:
あなたはtypescriptですを使用していた場合には、私はこのようなあなたの状態を定義しますただ、内側の方法で状態を作成して開始
で空のオブジェクトを割り当てる - - 。それはsimplierになりますので、あなたも、タイプを割り当てる必要はありません平野JSで
レンダリングは、悪い考えです。
推奨する推奨されるのは、コンストラクタでsetState()または 'state = ...'のみです。
ステートオブジェクトは文字通りJavascriptオブジェクトであるため、すでに動的です。
必要に応じて、いつでもどこでも変更できます。しかし、これは、Reactがあなたに与える良いデザインパターンを完全に破っています。データの真実を単一のソースにして、何らかの状態オブジェクトを変更することは、デバッグをケーキにしているすべてのアクションの完全な履歴を与えません。
これは、初期状態を作成し、指定したフィールドを変更しながら新しいコピーを作成するsetStateを使用することをお勧めしている理由です。
「正しく状態を使用して」にダウンスキップ:https://facebook.github.io/react/docs/state-and-lifecycle.html
をあなたは「動的にその場で新しい状態を作成」する必要がある場合は、あなたがいるかどうか、初期値を持つコンストラクタでこれらを定義することはできません何らかの理由がありますまたはそれらを使用していない?私は最初の状態を持つのではなく、最初に存在しなければならない理由は見当たりません。あなたがやろうとしていることについてのより詳細な情報が役に立つでしょう。
私は動的状態を作成する目的を持っていませんでした。コンストラクタ内に空の状態オブジェクトを置いて、必要な方法でコンポーネント内部の状態オブジェクトを操作することができます。あなたはここであなたの要件を詳述できますか? – Umesh