BigData.jsx 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. import React from 'react';
  2. import Tree from '../index';
  3. import Gen from './bigDataGen';
  4. class Demo extends React.Component {
  5. state = {
  6. gData: [],
  7. };
  8. // componentWillUpdate(nextProps, nextState) {
  9. // // invoked immediately before rendering with new props or state, not for initial 'render'
  10. // // see componentWillReceiveProps if you need to call setState
  11. // // console.log(nextState.gData === this.state.gData);
  12. // if (nextState.gData === this.state.gData) {
  13. // this.notReRender = true;
  14. // } else {
  15. // this.notReRender = false;
  16. // }
  17. // }
  18. onGen = data => {
  19. this.setState({
  20. gData: data,
  21. });
  22. };
  23. render() {
  24. return (
  25. <div style={{ padding: '0 20px' }}>
  26. <Gen onGen={this.onGen} />
  27. {this.state.gData.length ? (
  28. <Tree
  29. treeData={this.state.gData}
  30. filterTreeNode
  31. style={{
  32. height: 500,
  33. display: 'flex',
  34. 'flexDirection': 'column',
  35. }}
  36. debounceWait={1200}
  37. multiple
  38. virtualize={{
  39. height: 300,
  40. itemSize: 28,
  41. // height: '100%',
  42. }}
  43. // onExpand={(e, {expanded, node}) => console.log('expand', e, expanded, node)}
  44. // onSelect={(e, bool) => console.log('select', e, bool)}
  45. // onChange={e => console.log('change', e)}
  46. />
  47. ) : null}
  48. </div>
  49. );
  50. }
  51. }
  52. export default Demo;