Griddle hỗ trợ subgrids. Tôi có một thành phần tùy chỉnh (được sử dụng để chọn hàng) trong một trong các trường thay đổi trạng thái. Sự thay đổi trạng thái này gây ra một tái render, làm sụp đổ subgrid. Tuy nhiên, tôi muốn nó vẫn mở.Vỉa quế vỉa hè Thu gọn trên Render
Vấn đề tương tự này được ghi lại trong Github issue này, bao gồm example (nhờ @denzelby của Github) trong đó lọc thu gọn các cây con.
Lưu ý trong mã từ fiddle cách trạng thái được cập nhật onCountClick
(nhấn vào nút "inc"), gây ra tái render:
var GridAndCounter = React.createClass({
render: function() {
var columnNames = ['id', 'age', 'name', 'company', 'state', 'country', 'favoriteNumber'];
var rowMetadata = {key: "id"};
return <div><Counter count={this.state.count} onClick={this.onCountClick} /><Griddle results={fakeData} rowMetadata={rowMetadata} columnNames={columnNames} resultsPerPage={100} showFilter={true} /></div>
},
onCountClick: function() {
React.addons.Perf.start();
this.setState({count: this.state.count + 1 });
setTimeout(function() {
React.addons.Perf.stop();
React.addons.Perf.printDOM();
}, 500);
},
getInitialState: function() {
return { count: 0 };
}
})
cập nhật tình trạng này gây ra lại làm mà thiết lập mọi thứ để sụp đổ. Làm thế nào tôi có thể giữ mọi thứ được mở rộng khi tái render? Tôi có lẽ có thể theo dõi cái nào được mở rộng bản thân mình, nhưng sau đó tôi sẽ cần một cách có lập trình để mở rộng các hàng, mà tôi đã không phát hiện với Griddle.
Cảm ơn các đề xuất hữu ích. Tôi đã cố gắng # 1 nhưng không thành công. Có vẻ như nó tạo lại toàn bộ thành phần. Griddle 1.0 đang hoạt động, vì vậy có lẽ chúng ta sẽ thấy một cách tiếp cận tốt hơn hoặc bản địa hơn. –