更改元素样式,而不是基于激发事件

xvw2m8pv  于 2022-09-18  发布在  Java
关注(0)|答案(1)|浏览(161)

我正在学习Reaction,我正在编辑一个Tic Tac Toe游戏的教程。当有赢家时,赢家线应该突出显示。我将一个line道具一直传递到Square组件,并编写了以下代码:

function Square(props) {
    props.line ? 
       return (
          <button className="square" onClick={props.onClick} style={{backgroundColor: "red"}}>
            {props.value}
          </button>
       );
    :
       return (
          <button className="square" onClick={props.onClick}>
            {props.value}
          </button>
       );
}

首先,一开始return有一个语法错误,但每当我尝试修复它时,我都只是创建一个新的错误,显然我不知道如何在return中处理JavaScript,那么即使我想要的是一个正确的语法,它可能仍然只会改变特定Square的颜色,而不是整个props.line

agxfikkp

agxfikkp1#

您可以在一条返回语句中处理该样式,使用以下代码:

function Square(props) {
  return (
    <button className="square" onClick={props.onClick}>
      {props.value}
    </button>
  );
}

您可以在this codepen上查看此解决方案的实际工作示例。

相关问题