index.js 787 B

1234567891011121314151617181920212223242526272829
  1. import React from 'react';
  2. import './index.less';
  3. function Filter(props) {
  4. const { list = [], filter = {}, onFilter } = props;
  5. return (
  6. <div className="filter">
  7. {list.map(item => {
  8. return (
  9. <div className="list">
  10. {item.children &&
  11. item.children.map((child, index) => {
  12. return (
  13. <div
  14. className={`item ${filter[item.key] === child.key || (!filter[item.key] && index === 0) ? 'active' : ''}`}
  15. onClick={() => onFilter(item.key, child.key)}
  16. >
  17. {child.title}
  18. </div>
  19. );
  20. })}
  21. </div>
  22. );
  23. })}
  24. </div>
  25. );
  26. }
  27. Filter.propTypes = {};
  28. export default Filter;