前端译趣

使用 React 和 Bit 进行原子化设计: 简化复杂 UI

2018-06-28  本文已影响33人  linc2046
使用 React 和 Bit 进行原子化设计: 简化复杂 UI

如何分解 UI 复杂性,轻量级管理,创建组件目录和组件组合

问题

当前前端开发世界趋于复杂,每次都会出现新框架、工具、技术和用户需求,为了跟上这些最新趋势,我得刷业内新闻和 tweet。在变化如此快速的环境中找到方向略显困难。在大环境中落地的方式之一是通过标准或设计系统来组织代码。

原子化设计

原子化设计系统,能够识别继承关系、重点、类型以及每个组件的角色。

组件通过不同方式复合组装应用整体结构。

原因

设计系统出现的原因是我们开始淹没在大型项目中大量的组件中。

在大型系统中,有一两百个组件,不可能知道每一个组件。

起源

Brad Frost 提出原子化设计系统,为了让大家更自如了解和深入阅读这方面的文章,这里提供一本专门介绍系统的

示例 UI

我没找到让我完全满意的 UI 示例,下面是一张最接近要求的示例。

我不会精确还原每一个像素,亦或是实现完全一样的布局。

这里的目标是展示如何分割组件。

组件分解

我不认为一开始就能确定最终的结果,相信还有更好的方式可以解耦 UI 组件,但目的是一致的,

让组件更易于管理。这里采用自上而下的方法:

目录

解耦每个组件,然后在线创建在线分类会让后面开发人员更容易查找和使用。

Bit

Bit 是一个支持组件即服务的在线平台,可以在线托管存在组件,支持组件查找,组件版本号,独立运行,

并且支持不同项目的组件集成。

Bit 解决了管理组件系统这个通用问题,并且将开发人员从持续造轮子解脱,提高开发效率。

下面是推送至 Bit 的示例渲染组件,更多信息可以观看这个视频

结果

最后,我创建 15 个组件,可以组合成上面的示例 UI 界面。

最终的界面没有放在这里,因为超出本文的界限。

组件经过分类可以在线访问,全部代码放在这个仓库

开发完成后,创建自己的组件目录变得十分简单。

只需要在 bitsrc.io 上注册,输入下面的简单命令就可以实现

# Navigate to the project directory and initialize Bit
$ cd project_dir
$ bit init
$ bit login
# Add the components to the local scope
$ bit add src/components/atoms/*
$ bit add src/components/pages/*
# Check if all components are added
$ bit status
# Tag the version and upload the components to Bit
$ bit tag --all 1.0.0
$ bit export <your_username>.<your_scope>

最终结果可以访问这个链接

这是组件空间,可以理解成导出组件空间,可以有多个私有或公共空间。

我们看下<Panel />组件,在线支持组件文档、测试、构建和编译,并且支持查看代码目录和文件。

$ bit init
$ bit import <your_username/<your_scope/avatar-image \
  --path src/components/avatar-image

现在可以在后续的项目中直接导入组件,但是要确保项目支持打包引用资源。

例如,上面组件导入的样式文件。

你可以查看 Bit 官方文档提供的组件渲染、测试和文档。

总结

Bit 是全新的工具,让标准化管理模块化和可复用组件变得更简单。

开发人员应当关注项目需求和高质量代码交付,不应该担心其他项目或他人使用自己的组件。

译者注

上一篇 下一篇

猜你喜欢

热点阅读