如何在JSX中的三元运算符中进行两个函数调用?

gee*_*703 2 javascript ternary-operator reactjs

如果在三元运算符内满足条件,我试图渲染两个组件.但是,仅渲染第二个组件.我怎么可能在条件之后放两个函数调用?

    {
      views === "monthly"
      ? this.renderDays(),
        this.renderCells()
      : null
    }
Run Code Online (Sandbox Code Playgroud)

我尝试了以下(没有一个工作)

    {
      views === "monthly"
      ? this.renderDays(),
        this.renderCells()
      : null
    }

    {
      views === "monthly"
      ? (this.renderDays(), this.renderCells())
      : null
    }

    {
      views === "monthly"
      ? (this.renderDays(); this.renderCells())
      : null
    }
Run Code Online (Sandbox Code Playgroud)

Jon*_*lms 8

您可以返回一组组件:

{
  views === "monthly"
  ? [this.renderDays(), this.renderCells()]
  : null
}
Run Code Online (Sandbox Code Playgroud)

或者,如果方法返回数组本身,只需传播它们:

 {
  views === "monthly"
  ? [...this.renderDays(), ...this.renderCells()]
  : null
}
Run Code Online (Sandbox Code Playgroud)