@alveole/故事书
(原始内容存档于2013-10-10) (英语). Composants réublisiouss pour exploser un course de sories and de sorms de thème.
盛大的聚会 ui-kit 页:1 groove-application/app/ui-kit(原始内容存档于2013-10-12). Mais sous une forme réutilision et indépendante d'Expo路由器.
总理
互联网档案馆的存檔,存档日期2013-12-04
@alveole/components@alveole/themereactreact-native
(原始内容存档于2018-09-25) (英语). Il doit àtre rendu dans une app déjà enveloppée par ThemeProvider。 。 。 .
不负责任的出口
Le 包导出 :
StoriesScreenStoryDetailScreenThemeConstantsScreenThemeConstantDetailScreenThemePaletteScreenThemeTypographyScreenJsonBlock- 类型
StorybookMeta, (中文(简体) ),StorybookModule, (中文(简体) ),StorybookFlag, (中文(简体) ),StorybookFlagKey - 帮助者
utils
故事重指挥器
软件包 @alveole/storybook 导演最精彩的故事 packages/components。 。 。 .
Le图案重新命令 est :
- 无
export defaultqui sat typeStory - 页:1
export const倒出彩绘
执行《公约》 插文. stories.tsx 数字 :
import { Story } from '../../type';
import { Typography } from '../Typography';
import { Box } from './Box';
export default {
title: 'Box',
tags: ['Kit'],
experimental: false,
description: 'Description du composant',
component: Box,
styleFn: () => 'Aucun style applique',
} satisfies Story;
export const BoxDefault = () => (
<Box tag="box">
<Typography>Contenu par defaut</Typography>
</Box>
);
export const BoxPadded = () => (
<Box p={16}>
<Typography>Box avec padding</Typography>
</Box>
);
乐 default (原始内容存档于2018-09-26). porte les metadones de la story. Les autres 输出 sont les 变体 StoryDetailScreen。 。 。 .
冠军 shortDescription
选择权。 风云四起 description 160个汽车客机.
- 最大160个活体
- Texte Brut 独占( Markdown) Name
- Utilise 倾斜
<meta name="description">关于堆肥细节的页
Si缺席, la meta 描述 est calculee自发 由 rtirant le Markdown de description。 。 。 .
具体内容, @alveole/storybook (原始内容存档于2018-09-21). n'introduit pas un nouveau format de story. 我改用西来西来语 packages/components/src/**/*.stories.tsx。 。 。 .
结构事务 par le 软件包
问:
import * as Stories from '@alveole/components/stories';
chaque 模块导出 se 重定向 sous une forme 等同 a :
import type { StorybookModule } from '@alveole/storybook';
const ButtonStory = {
default: {
title: 'Button',
tags: ['Kit'],
experimental: false,
description: 'Boutons de l application',
figmaURL: 'https://figma.com/...',
styleFn: () => ({}),
},
Primary: () => <MyButton label="Primary" />,
Secondary: () => <MyButton label="Secondary" />,
} satisfies StorybookModule;
直径 :
default(原始内容存档于2018-09-21) (英语). doit contenir les metadones- 产品出口
- 爱不释手
StoriesScreen尔StoryDetailScreen我的故事主持人统一 - le bon point d'entree est un ecran 目录 qui consomme 主题 主题 主题 主题 主题
@alveole/components/stories
少许故事
import * as Stories from '@alveole/components/stories';
import { StoriesScreen, StoryDetailScreen, type StorybookModule } from '@alveole/storybook';
import React from 'react';
const storyList = Object.values(Stories) as StorybookModule[];
export const StoryCatalogPage = () => {
const [selectedStory, setSelectedStory] = React.useState<StorybookModule | null>(null);
if (selectedStory) {
return <StoryDetailScreen story={selectedStory} />;
}
return (
<StoriesScreen
stories={storyList}
title="UI Kit - Components"
description="Catalogue des composants"
onSelectStory={setSelectedStory}
/>
);
};
实例 avec 博览会路由器
{\fn黑体\fs20\shad2\2aH82\3aH20\4aH33\fscx95\3cH592001\be1}路途尽收 四分卫 导航系统.
import * as Stories from '@alveole/components/stories';
import { StoriesScreen, type StorybookModule } from '@alveole/storybook';
import { router } from 'expo-router';
const storyList = Object.values(Stories) as StorybookModule[];
export default function UIKitStoriesRoute() {
return (
<StoriesScreen
stories={storyList}
onSelectStory={story => {
router.push(`/ui-kit/components/${encodeURIComponent(story.default.title)}`);
}}
/>
);
}
赛道:
import * as Stories from '@alveole/components/stories';
import { StoryDetailScreen, type StorybookModule } from '@alveole/storybook';
import { useLocalSearchParams } from 'expo-router';
export default function UIKitStoryDetailRoute() {
const { component } = useLocalSearchParams<{ component: string }>();
const story = (Object.values(Stories) as StorybookModule[]).find(entry => entry.default.title === component) ?? null;
return <StoryDetailScreen story={story} />;
}
常住人口实例
import * as ThemeConstants from '@alveole/theme';
import { ThemeConstantsScreen } from '@alveole/storybook';
export default function ThemeConstantsPage() {
return (
<ThemeConstantsScreen constants={ThemeConstants} title="UI Kit - Constants" description="Constantes du thème" />
);
}
象征仪式
import { ThemePaletteScreen } from '@alveole/storybook';
export default function ThemeTokensPage() {
return <ThemePaletteScreen />;
}
L'écran lit le catalys des couleurs extrait au built du source du Thème (ADR 0035): une (英语) ligne par sord, avec son chemin complete, sa 细微的, son hex et son statut déprécié. 中国植物物种信息数据库.
印刷机实例
import { CustomTypography } from '@alveole/theme';
import { ThemeTypographyScreen } from '@alveole/storybook';
export default function ThemeTypographyPage() {
return <ThemeTypographyScreen typography={CustomTypography} />;
}
推荐主笔
StoriesScreen
stories: 故事列表title: 已删除页description: 页 次emptyMessage[永久失效連結] (中文(简体) )createLabel:诽谤onCreatePress: 回电 \ \ \ \ \ \onSelectStory: 回叫 au clic sur une 故事
StoryDetailScreen
story:故事节notFoundMessage: 消息 si la 故事 est 缺席
ThemeConstantsScreen
constants: 常数title: 已删除页description: 页 次onSelectConstant: 召回 au clic sur une 恒定
ThemeConstantDetailScreen
name:常数value: 恒定值
ThemePaletteScreen
catalogue: 阿尔韦奥勒法语区目录palette:dépréciée et ignorée, retirée au prochain sump majeur (英语:title: 已删除页description: 页 次
ThemeTypographyScreen
typography: objet de sorders stypo (简体中文)title: 已删除页description: 页 次
页:1
- 故事书编辑部.
- Il ne dépend pas d ' Expo路由器, iis il est pensé pour sy s ' differse feclement. 中国植物物种信息数据库.
StoryDetailScreen通过Linking.openURL。 。 。 .- JSON通过
JsonBlock。 。 。 .