whizkydee / dropd

⚡️Zero-dependency minimalistic dropdown component for React and Vue.
https://npm.im/dropd-component
MIT License
73 stars 15 forks source link

Add support for slots #3

Open whizkydee opened 5 years ago

whizkydee commented 5 years ago

Make it possible for the user to completely take control of dropd-list, dropd-item and dropd-toggle via Vue slots and a similar workaround in React, with relevant props bound to them.

⚒ Proposed API

<Dropd {...props}>
  <Dropd.List>
      ...
      <Dropd.Item>
        ...
    </Dropd.Item>
  </Dropd.List>

  <Dropd.Toggle>
    ...
  </Dropd.Toggle>
</Dropd>
<dropd {...props}>
  <ul slot="dropd-list">
    ...
    <li slot="dropd-item">
      ...
    </li>
  </ul>

  <button slot="dropd-toggle">
    ...
  </button>
</dropd>
Youngestdev commented 5 years ago

For react, a context-consumer relationship will be just fine I guess.