UNPKG

@coreui/react

Version:

CoreUI React 17 Bootstrap 4 components

40 lines (32 loc) 883 B
import React, { useState, useEffect } from 'react' import PropTypes from 'prop-types' //component - CoreUI / CTabPane export const Context = React.createContext() const CTabs = props => { const { children, activeTab, onActiveTabChange } = props const [active, setActive] = useState(0) useEffect(() => { activeTab !== undefined && setActive(activeTab) }, [activeTab]) const setActiveTab = tab => { onActiveTabChange && onActiveTabChange(tab) setActive(tab) } return ( <React.Fragment> <Context.Provider value={{active, setActiveTab}}> {children} </Context.Provider> </React.Fragment> ) } CTabs.propTypes = { children: PropTypes.node, activeTab: PropTypes.oneOfType([PropTypes.string, PropTypes.number]), onActiveTabChange: PropTypes.func, } export default CTabs