如果在React 15中嵌套2内联的最佳方法是什么?

时间:2018-05-31 02:55:00

标签: javascript reactjs react-router

我想知道是否可以在reactjs jsx中嵌套2 ifs? 我尝试了各种不同的方法,但我无法让它发挥作用。 我尝试过只使用它的元素。只要我把我的代码放入元素中就会破坏。

              <div>
                {
                  (() => {
                    if (VerticalRole === "Software Developer")

                    <div>
                      <label>GITHUB ACCOUNT</label>
                      <div className="value">
                        <input
                          type="text"
                          name="github_url"
                          className="lowercase"
                          defaultValue={this.props.talent.github_url}
                          onChange={this.onChangeInput.bind(this)}
                        />
                      </div>
                    </div>

                    if (MarketVetical === "Creative/Marketing")

                    <div>
                      <label>Portfolio Website</label>
                      <div className="value">
                        <input
                          type="text"
                          name="github_url"
                          className="lowercase"
                          defaultValue= 
                          {this.props.talent.personal_website}
                          onChange={this.onChangeInput.bind(this)}
                        />
                      </div>
                    </div>
                  })()
                }
              </div>

1 个答案:

答案 0 :(得分:1)

您可以尝试使用三元运算符:

<div>
  {
    VerticalRole === "Software Developer" ?
      <div>
        <label>GITHUB ACCOUNT</label>
        <div className="value">
          <input
            type="text"
            name="github_url"
            className="lowercase"
            defaultValue={this.props.talent.github_url}
            onChange={this.onChangeInput.bind(this)}
            />
          </div>
      </div>
    : MarketVetical === "Creative/Marketing" ?
      <div>
        <label>Portfolio Website</label>
        <div className="value">
          <input
            type="text"
            name="github_url"
            className="lowercase"
            defaultValue= 
            {this.props.talent.personal_website}
            onChange={this.onChangeInput.bind(this)}
          />
        </div>
      </div>
    : null
  }
</div>