Tabs
The Tabs component displays a group of buttons used to navigate between different views.
Default
A basic tab group with internal state and static content blocks.
Build the perfect messaging experience in 10 minutes.
<Tabs tabs={[ { label: "Home", content: <div>...</div> }, { label: "Profile", content: <div>...</div> }, { label: "Settings", content: <div>...</div> }, ]} />
With icons
Each tab can optionally include an icon component before the label.
Explore the many out-of-the-box features of TalkJS.
<Tabs tabs={[ { label: ( <span className="flex items-center gap-1.5"> <Home className="w-4 h-4" /> Home </span> ), content: <Text as="p">...</Text>, }, { label: ( <span className="flex items-center gap-1.5"> <View className="w-4 h-4" /> Components </span> ), content: <Text as="p">...</Text>, }, { label: ( <span className="flex items-center gap-1.5"> <Wikis className="w-4 h-4" /> Customers </span> ), content: <Text as="p">...</Text>, }, ]} />
Props
tabs
— Array of tab objects withlabel
andcontent
.onChange
— Optional callback called with the selected label.
Usage
Import the Tabs component and define your tab label
, content
, and optional onChange
handler.
import Tabs from "../../components/Tabs";
<Tabs tabs={[ { label: "Home", content: <div>...</div> }, { label: "Profile", content: <div>...</div> }, ]} onChange={(label) => console.log("Selected:", label)} />