useHasSider.js 351 B

123456789101112
  1. import toArray from "rc-util/es/Children/toArray";
  2. import Sider from '../Sider';
  3. export default function useHasSider(siders, children, hasSider) {
  4. if (typeof hasSider === 'boolean') {
  5. return hasSider;
  6. }
  7. if (siders.length) {
  8. return true;
  9. }
  10. const childNodes = toArray(children);
  11. return childNodes.some(node => node.type === Sider);
  12. }