ReactJS-シナリオに基づいて特定のコンポーネントをレンダリングする

ケビン・ナイカー

ページのステージシナリオに基づいて特定のコンポーネントをレンダリングしようとしています。可変の「transitComponent」を使用して、3つのコンポーネントの1つをレンダリングしています。循環進行(待機)または応答が受信されたら2つのボタンの1つです。

助言がありますか?

render() {
const { classes } = this.props;
if (this.state.stage==1){ transitComponent = CircularProgress};
if (this.state.stage==2){ transitComponent = CancelButton };
if (this.state.stage==3){ transitComponent = OKButton };
return (
  <div align="center">
    <br />
    <Button align="center" variant="contained" color="primary" onClick=    {this.handleOpen}>Create Profile</Button>
    <Modal aria-labelledby="simple-modal-title" aria-describedby="simple-    modal-description" open={this.state.open} onClose={this.handleClose}>
      <div style={getModalStyle()} className={classes.paper}>
        <Typography variant="title" id="modal-title" align="center">
          {this.state.message}
        </Typography>
        {transitComponent}
      </div>
    </Modal>
  </div>
    );
  }
パトリック犬

現在のに応じてCircularProgressCancelButtonまたはOKButton一時変数transitComponent割り当てていstate.stageます。それは大丈夫です、あなたが間違えた唯一の部分はあなたがそのコンポーネントをどのようにレンダリングするかです。

以来transitComponent、他の同様の成分である、あなたは、中括弧でそれをレンダリングしませんが、コンポーネントとして、その<transitComponent />適切な方法だろう。

もう1つ:Reactの命名規則では、コンポーネントに大文字で名前を付ける必要があるため、名前を付けてTransitComponent、としてレンダリングする必要があります<TransitComponent />

そしてTransitComponentlet声明で宣言すること忘れないでください

更新されたコード例:

render() {
  const { classes } = this.props;
  let TransitComponent;
  if (this.state.stage==1){ TransitComponent = CircularProgress};
  if (this.state.stage==2){ TransitComponent = CancelButton };
  if (this.state.stage==3){ TransitComponent = OKButton };
  return (
    <div align="center">
      <br />
      <Button align="center" variant="contained" color="primary" onClick={this.handleOpen}>Create Profile</Button>
      <Modal aria-labelledby="simple-modal-title" aria-describedby="simple-modal-description" open={this.state.open} onClose={this.handleClose}>
        <div style={getModalStyle()} className={classes.paper}>
          <Typography variant="title" id="modal-title" align="center">
            {this.state.message}
          </Typography>
          <TransitComponent />
        </div>
      </Modal>
    </div>
  );
}

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

レンダリングを分岐するReactJSコンポーネントの作成

分類Dev

特定のDIV要素でコンポーネントをレンダリングするReactJS

分類Dev

パラメータコンポーネントがreactJSでreactrouterを使用してレンダリングする場合、HOCコンポーネントの不要な再レンダリングを回避するにはどうすればよいですか?

分類Dev

ユーザー選択に基づくReactJSレンダリングコンポーネント

分類Dev

ReactJs:動的コンポーネントのコレクションをレンダリングします

分類Dev

Reactjs反応コンポーネントを文字列に挿入してレンダリングする方法

分類Dev

ReactJsコンポーネントのレンダリングが失敗する

分類Dev

状態に基づいてReactJSで条件付きでコンテンツをレンダリングする

分類Dev

DOMに配置する前にReactJSコンポーネントをメモリにレンダリングする

分類Dev

reactjsでコンポーネントの特定の部分をレンダリングしない方法

分類Dev

ユーザーのオペレーティングシステムに基づいてReactJSコンテンツを条件付きでレンダリングする方法

分類Dev

特定の兄弟コンポーネントがレンダリングされるときの Reactjs スタイル コンポーネントの違い

分類Dev

ReactJS:コンポーネントの状態のレンダリングに関する問題

分類Dev

AJAXがReactJSを呼び出した後にコンポーネントをレンダリングする

分類Dev

ReactJSは、下にスクロールしてページ上でコンポーネントに到達したときにのみコンポーネントをレンダリングする方法を教えてください。

分類Dev

レンダリングされたコンポーネントの小道具にアクセスするReactJS

分類Dev

ReactJS-適切なコンポーネントのレンダリングに関する問題

分類Dev

文字列からコンポーネントを動的にレンダリングする:ReactJS

分類Dev

状態変更時に子コンポーネントを再レンダリングする方法(親)reactjs

分類Dev

ReactJS-戻るときに同じコンポーネントを再レンダリングします

分類Dev

ReactJS-戻るときに同じコンポーネントを再レンダリングします

分類Dev

コンポーネントの複数のナビゲーションリンクは、reactjsを使用してクリックごとにレンダリングします

分類Dev

ReactJS)PHPからXMLHttpRequestを使用してデータを取得し、そのデータを兄弟コンポーネント内にレンダリングする方法

分類Dev

ReactJs:コンポーネントのレンダリング中に初期状態を渡す方法は?

分類Dev

純粋なReactJS(機能)コンポーネントで子の小道具をレンダリングする

分類Dev

reactjsコンポーネントで複数のアイテムをレンダリングする

分類Dev

ReactJS:複数のコンポーネントを条件付きでレンダリングする

分類Dev

ReactJSでツリー全体を再レンダリングせずにツリーコンポーネントのリーフコンポーネントをレンダリングする方法

分類Dev

ReactJSコンポーネントのレンダリングと、コンポーネントがマウントされているdivに要素を追加する方法

Related 関連記事

  1. 1

    レンダリングを分岐するReactJSコンポーネントの作成

  2. 2

    特定のDIV要素でコンポーネントをレンダリングするReactJS

  3. 3

    パラメータコンポーネントがreactJSでreactrouterを使用してレンダリングする場合、HOCコンポーネントの不要な再レンダリングを回避するにはどうすればよいですか?

  4. 4

    ユーザー選択に基づくReactJSレンダリングコンポーネント

  5. 5

    ReactJs:動的コンポーネントのコレクションをレンダリングします

  6. 6

    Reactjs反応コンポーネントを文字列に挿入してレンダリングする方法

  7. 7

    ReactJsコンポーネントのレンダリングが失敗する

  8. 8

    状態に基づいてReactJSで条件付きでコンテンツをレンダリングする

  9. 9

    DOMに配置する前にReactJSコンポーネントをメモリにレンダリングする

  10. 10

    reactjsでコンポーネントの特定の部分をレンダリングしない方法

  11. 11

    ユーザーのオペレーティングシステムに基づいてReactJSコンテンツを条件付きでレンダリングする方法

  12. 12

    特定の兄弟コンポーネントがレンダリングされるときの Reactjs スタイル コンポーネントの違い

  13. 13

    ReactJS:コンポーネントの状態のレンダリングに関する問題

  14. 14

    AJAXがReactJSを呼び出した後にコンポーネントをレンダリングする

  15. 15

    ReactJSは、下にスクロールしてページ上でコンポーネントに到達したときにのみコンポーネントをレンダリングする方法を教えてください。

  16. 16

    レンダリングされたコンポーネントの小道具にアクセスするReactJS

  17. 17

    ReactJS-適切なコンポーネントのレンダリングに関する問題

  18. 18

    文字列からコンポーネントを動的にレンダリングする:ReactJS

  19. 19

    状態変更時に子コンポーネントを再レンダリングする方法(親)reactjs

  20. 20

    ReactJS-戻るときに同じコンポーネントを再レンダリングします

  21. 21

    ReactJS-戻るときに同じコンポーネントを再レンダリングします

  22. 22

    コンポーネントの複数のナビゲーションリンクは、reactjsを使用してクリックごとにレンダリングします

  23. 23

    ReactJS)PHPからXMLHttpRequestを使用してデータを取得し、そのデータを兄弟コンポーネント内にレンダリングする方法

  24. 24

    ReactJs:コンポーネントのレンダリング中に初期状態を渡す方法は?

  25. 25

    純粋なReactJS(機能)コンポーネントで子の小道具をレンダリングする

  26. 26

    reactjsコンポーネントで複数のアイテムをレンダリングする

  27. 27

    ReactJS:複数のコンポーネントを条件付きでレンダリングする

  28. 28

    ReactJSでツリー全体を再レンダリングせずにツリーコンポーネントのリーフコンポーネントをレンダリングする方法

  29. 29

    ReactJSコンポーネントのレンダリングと、コンポーネントがマウントされているdivに要素を追加する方法

ホットタグ

アーカイブ