使用HTML和CSS反应组件语法



尝试使用React创建一个简单的类似/不同组件。如何使用<i class="fal fa-thumbs-down">标记和类来呈现此组件以设置图标样式?我这里的语法有些错误。

class LikeButton extends React.Component {
constructor(props) {
super(props);
this.state = { liked: false };
}
render() {
if (this.state.liked) {
return (
<i class="fal fa-thumbs-down"></i>
{ onClick: () => this.setState({ liked: false }) }
);
}
return (
<i class="fal fa-thumbs-up"></i>
{ onClick: () => this.setState({ liked: true }) }
);
}
}
return (
<i class="fal fa-thumbs-down" onClick={ () => this.setState({ liked: !this.state.liked}) } />
)

我做了三个改变:

  1. onClick是传递给i的道具,就像class一样
  2. 我现在正在自我封闭
  3. onClick中的逻辑不是有条件地呈现,而是有条件的(单击时会翻转现有状态(

此外,我强烈建议切换到功能组件,而不是类组件。和它们一起工作更干净(也更有趣!(。

最新更新