我在 td 标签中插入 React 组件时遇到问题。该组件应插入到被单击的那个 td 中。
如您所见,每个 td 都有用于checkPlayer函数的onClick事件侦听器。此函数检查符号状态的值,并根据该值将 X 组件或 O 组件插入到该特定 td 中。
你们能帮我如何渲染这样的组件吗?当前的方法只写[object object]
我的目标——输出
<td>{<X />}</td>
X组件,O组件几乎相同
import React from 'react';
//styles
import './X.scss';
function X(){
return(
<div className="X">
<p>X</p>
</div>
)
}
export default X;
应用程序.js
function App() {
const [sign,setSign] = useState(true)
function checkPlayer(e){
//1st player
if(sign === true){
e.target.innerHTML = <X />;
setSign(false);
}
//2nd player
if(sign === false){
e.target.innerText = <O />;
setSign(true);
}
}
App.js 的 HTML 部分
return (
<div className="App">
<div className="container">
<table>
<tbody>
<tr>
<td onClick={checkPlayer}></td>
<td onClick={checkPlayer}></td>
<td onClick={checkPlayer}></td>
</tr>
<tr>
<td onClick={checkPlayer}></td>
<td onClick={checkPlayer}></td>
<td onClick={checkPlayer}></td>
</tr>
<tr>
<td onClick={checkPlayer}></td>
<td onClick={checkPlayer}></td>
<td onClick={checkPlayer}></td>
</tr>
</tbody>
</table>
</div>
</div>
);
}
LEATH
相关分类