@feuer/react-tabs
v0.1.8
Published
This component use compound components concept to create a simple tabs component
Downloads
36
Maintainers
Readme
Demo
- For quick demo please checkout this storybook.
- For quick code usage pelase checkout this codesandbox
React Tabs
Simple React Tabs using the new react ContextAPI to manage changes active tabs or not. And there is no need to add tabs container you just add a tab component.
Introduction
This project done using ReactJS and normal styling to add a small react-tabs component to your project without a huge library.
Installation
This module is distributed via npm which is bundled with node and should be installed as one of your project's dependencies:
Yarn
yarn add @feuer/react-tabs
Npm
npm install @feuer/react-tabs
This package also depends on react
, tslib
only esm for umd its already included, react-dom
, prop-types
. Please make sure you have it installed as well.
Usage
Try it out in the browser
import React from "react";
import { Tabs } from "@feuer/react-tabs";
const styles = {
fontFamily: "sans-serif",
textAlign: "center"
};
const LeftTabs = () => (
<div style={styles}>
<Tabs
activeTab={{
id: "tab1"
}}
>
<Tabs.Tab id="tab1" title="Tab 1">
<div style={{ padding: 10 }}>
This is tab 1
</div>
</Tabs.Tab>
<Tabs.Tab id="tab2" title="Tab 2">
<div style={{ padding: 10 }}>
This is tab 2
</div>
</Tabs.Tab>
</Tabs>
</div>
);
Basic Props
This is the list of props that you should probably know about when using react-tabs.
Tabs Component Props
Tabs.propTypes = {
activeTab: {
id: PropTypes.string.isRequired,
},
children: PropTypes.arrayOf(PropTypes.node).isRequired,
tabsProps: {
style: PropTypes.object,
className: PropTypes.string
}
};
Tab Component Props
Tab.propTypes = {
id: PropTypes.string.isRequired,
title: PropTypes.string.isRequired,
tabIndex: PropTypes.oneOf([PropTypes.string, PropTypes.number])
};
Contributing
Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.
Versioning
We use SemVer for versioning. For the versions available, see the tags on this repository.
Authors
- Yazan Aabed
- See also the list of contributors who participated in this project.
License
This project is licensed under the MIT License - see the LICENSE.md file for details