我正在構建一個具有普通行,然後是隱藏兩個行直到加上圖標被點擊的表。當圖標被點擊時,它應該變成一個減號,隱藏的行應該改變CSS類。也應該反向工作。React ES6 onClick更改其他組件
import React from 'react';
class HiddenRow extends React.Component {
render() {
return (
<tr className="hidden-row">
<td>Stuff</td>
</tr>
);
}
}
class NormalRow extends React.Component {
constructor(props) {
super(props);
this.handleClick = this.handleClick.bind(this);
}
handleClick() {
console.log('here');
// Expand rows if hidden change icon to fa-minus-circle
// Hide rows if not and change icon to fa-plus-circle
}
render() {
return (
<tr>
<td><i className="fa fa-plus-circle" onClick={this.handleClick}></i> Hello</td>
</tr>
);
}
}
class ParentDiv extends React.Component {
render() {
return (
<div>
<table>
<tbody>
<NormalRow />
<HiddenRow />
<HiddenRow />
<NormalRow />
<HiddenRow />
<HiddenRow />
</tbody>
</table>
</div>
);
}
}
編輯:表將擁有多套普通行和隱藏行。點擊正常行中的圖標應該只切換兩個直接隱藏的行。我使用JQuery在使用Angular時切換到React。作爲解決方案,我一直在使用React與W/JQuery進行遊戲。
這可能只是打開它們,但不確定它會在第二次點擊時隱藏它們。認爲句柄應該是'this.setState = {displayHiddenRows:!this.state.displayHiddenRows}' – Adam
另外我的例子將有多組普通/隱藏行。 – Adam