开始吧
- 注释:degit 从 github 拉去代码的工具,在国内范文 github 有问题,需要手动下载这个模板
npx degit chromaui/intro-storybook-vue-template taskbox
- 注释:启动组件开发环境
yarn storybook
简单组件
- 按照组件驱动开发 (CDD)来构建我们的 UI
- 注释:CDD 组件驱动开发,把一个页面分成边界清晰的小组件独立开发,这样更有利于提高可维护性和进行ui测试
- 我们根据上述的草图编写测试所需的状态(state)。然后我们使用 Storybook 模拟数据并独立的构建组件。我们可以“视觉测试”组件在每个状态下的外观。
- 创建 task 组件以及它相关的 story 文件:
src/components/Task.vue
和 src/components/Task.stories.js
- 注释:7.6提供的模板,组件放在
src/stories
文件中
- 注释:其中
Task.stories.js
用来创建不同测试状态
import Task from './Task.vue';
import { action } from '@storybook/addon-actions';
export default {
component: Task,
excludeStories: /.*Data$/,
title: 'Task',
argTypes: {
onPinTask: {},
onArchiveTask: {},
},
};
export const actionsData = {
onPinTask: action('pin-task'),
onArchiveTask: action('archive-task'),
};
const Template = args => ({
components: { Task },
setup() {
return { args, ...actionsData };
},
template: '<Task v-bind="args" />',
});
export const Default = Template.bind({});
Default.args = {
task: {
id: '1',
title: 'Test Task',
state: 'TASK_INBOX',
},
};
export const Pinned = Template.bind({});
Pinned.args = {
task: {
...Default.args.task,
state: 'TASK_PINNED',
},
};
export const Archived = Template.bind({});
Archived.args = {
task: {
...Default.args.task,
state: 'TASK_ARCHIVED',
},
};
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)