Utilização

Give a tab a title and platform icon

Este tipo é usado por Route

tsx
import { Route, Router, Tab, Tabs, Text } from 'kuito';

function Discover() {
  return <Text padding={16}>Discover</Text>;
}

function Library() {
  return <Text padding={16}>Library</Text>;
}

export default function App() {
  return (
    <Router>
      <Tabs>
        <Tab name="discover" title="Discover" icon={{ ios: 'safari', android: 'explore' }}>
          <Route name="index" path="/" screen={Discover} title="Discover" />
        </Tab>
        <Tab
          name="library"
          title="Library"
          icon={{ ios: 'books.vertical', android: 'library_music' }}
        >
          <Route name="library" path="/library" screen={Library} title="Library" />
        </Tab>
      </Tabs>
    </Router>
  );
}

Declaração do tipo

ts
export interface RouteProps<P extends object = {}, R = undefined> {
  /** Its key in `routes`. */
  name: string;
  /** Segments, `:name` params and a final `*name`: what a deep link's path matches. */
  path: string;
  /** How a link's text parses into each param; a path param left out is a string. */
  params?: { [K in keyof P]?: ParamType };
  screen: Component<ScreenProps<P, R>>;
  /** The native header's title. */
  title?: string | ((params: P) => string);
  presentation?: Presentation;
  /** The screen's color, under the bars too; the platform's background without. */
  backgroundColor?: string;
  /** A sheet route's heights, as `<Sheet snapPoints>` takes them; the platform's default without. */
  snapPoints?: readonly SnapPoint[];
  /** The native header: false hides it; its items, large title and search otherwise (docs/navigation.md#headers). */
  header?: false | ScreenHeader | ((params: P) => false | ScreenHeader);
  /** The system bars while this screen is focused, as a `<SystemBars>`'s props (docs/system-ui.md). */
  systemBars?: SystemBarsProps;
}

Membros 10

NomeTipoObrigatórioDescrição
namestringSimIts key in routes.
pathstringSimSegments, :name params and a final *name: what a deep link's path matches.
params{ [K in keyof P]?: ParamType; }NãoHow a link's text parses into each param; a path param left out is a string.
screenComponent<ScreenProps<P, R>>Sim—
titlestring | ((params: P) => string)NãoThe native header's title.
presentationPresentationNão—
backgroundColorstringNãoThe screen's color, under the bars too; the platform's background without.
snapPointsreadonly SnapPoint[]NãoA sheet route's heights, as <Sheet snapPoints> takes them; the platform's default without.
headerfalse | ScreenHeader | ((params: P) => false | ScreenHeader)NãoThe native header: false hides it; its items, large title and search otherwise (docs/navigation.md#headers).
systemBarsSystemBarsPropsNãoThe system bars while this screen is focused, as a <SystemBars>'s props (docs/system-ui.md).
screen — assinaturas de método

Assinaturas

ts
(props: ScreenProps<P, R>): KuitoNode

Parâmetros

NomeTipoObrigatórioDescrição
propsScreenProps<P, R>Sim—

Devolve

KuitoNode

systemBars — campos aninhados

systemBars campos

NomeTipoObrigatórioDescrição
statusBarStatusBarOptionsNãoThe status bar's content color, visibility and, on Android, color.
backgroundColorstringNãoThe root view's color, seen behind the app's views.
navigationBarColorstringNãoAndroid: drawn behind the navigation bar.
navigationBarButtonStyleNavigationBarButtonStyleNãoAndroid: light buttons for a dark navigation bar, dark buttons for a light one.
navigationBarHiddenbooleanNãoAndroid: hides the navigation bar; a swipe from the edge shows it for a moment.
immersivebooleanNãoFull screen: hides the status bar, the navigation bar and the home indicator, and on iOS edge swipes reach the app first. The entry's own props, and later entries, win over what it hides.
homeIndicatorAutoHiddenbooleanNãoiOS: lets the home indicator fade out while the user doesn't touch the screen.
statusBar — campos aninhados

statusBar campos

NomeTipoObrigatórioDescrição
contentStatusBarContentNãoThe color of the status bar's text and icons.
hiddenbooleanNão—
animatedbooleanNãoWhether changes to content, hidden and backgroundColor animate.
transitionStatusBarTransitionNãoiOS: how showing and hiding animates, when animated.
backgroundColorstringNãoAndroid: drawn behind the status bar; a hex color.
translucentbooleanNãoAndroid: false lays the app out below the status bar instead of under it.
Gerado a partir das declarações TypeScript públicas: assinaturas, props e predefinições vêm da fonte verificada, as descrições da sua JSDoc. Nenhuma predefinição é inventada.