コンテンツにスキップ
Vantage
English
Esc
navigateopen⌘Jpreview
このページの内容

Tabs

Tabs that switch between views.

Show one of several views in the same place. For a two-to-four-way toggle, SegmentedControl takes less room.

export const client = "only";

import { Tabs, TabsList, TabsTrigger, TabsContent } from "@squadbase/vantage/ui";

export default function Example() {
  return (
    <div className="flex w-[28rem] flex-col gap-8">
      <Tabs defaultValue="chart">
        <TabsList>
          <TabsTrigger value="chart">グラフ</TabsTrigger>
          <TabsTrigger value="table">表</TabsTrigger>
          <TabsTrigger value="sql">SQL</TabsTrigger>
        </TabsList>
        <TabsContent value="chart">月次の推移をグラフで表示します。</TabsContent>
        <TabsContent value="table">同じデータを表で表示します。</TabsContent>
        <TabsContent value="sql">この画面が発行しているクエリです。</TabsContent>
      </Tabs>

      <Tabs defaultValue="day">
        <TabsList variant="line">
          <TabsTrigger value="day">日次</TabsTrigger>
          <TabsTrigger value="week">週次</TabsTrigger>
          <TabsTrigger value="month">月次</TabsTrigger>
        </TabsList>
        <TabsContent value="day">variant="line" の見た目です。</TabsContent>
        <TabsContent value="week">下線だけのタブ。</TabsContent>
        <TabsContent value="month">画面の幅いっぱいに置くときに向きます。</TabsContent>
      </Tabs>
    </div>
  );
}
import { Tabs, TabsList, TabsTrigger, TabsContent, tabsListVariants } from "@squadbase/vantage/ui";

Parts

Part Role
Tabs The state: value / defaultValue / onValueChange, plus orientation
TabsList The strip. variant: default (filled) | line (underline)
TabsTrigger One tab; value is required
TabsContent The matching panel

To keep the active tab in the URL, wire value to a search param — see Routing.

orientation="vertical" stacks them.

このページは役に立ちましたか?