Skip to main content
Version: 2.x

前言

Brick Next 是 EasyOps 的新一代前端框架,旨在提供一套高度插件化、高度可配置化的企业用户界面解决方案。

Brick Next 为插件开发提供了什么能力

  • 登录态的继承
  • 权限的继承
  • 无缝对接(非 iframe 实现方式)
  • 可直接使用已有组件列表
  • 可直接使用已有的 Service,获得后台的所有资源数据

Brick Next 与其他平台的插件化开发有什么不同

这种开发是无缝的,与原生页面无任何差别,直接继承了登录态和权限等。同时还提供了调整出厂内置的界面的能力,如果有新的界面也可直接使用已有的各种 brick 库。

有部分产品也号称提供了灵活的上层二次开发的能力,但其实他只是提供了基本的后台框架(如 Django)和各种原生的 API 文档或者 SDK,至于前台页面是不能更改和无缝对接的

Brick Next 面向的用户是谁

  • 优维内部研发人员(优维新的产品都会基于此框架来开发,无差别使用)
  • 优维渠道商
  • 客户的内部平台维护人员(基于优维平台做上层的定制化开发)
  • 个人开发者

原理介绍

+------------------------------+      +----------------------+
| Brick Package | | Micro App |
| +---------+ +---------+ | ... | +----------------+ | ...
| | Brick A | | Brick B | ... | | | Storyboard | |
| +---------+ +---------+ | | +----------------+ |
+------------------------------+ +----------------------+

+-----------------------------------------------------------------+
| Brick Container |
| +--------------------------+ +-----------------------------+ |
| | Brick Kit | | Other DLLs | |
| +--------------------------+ +-----------------------------+ |
+-----------------------------------------------------------------+

系统主要由三部分组成:

  • Brick Package 是包含了一组构件(Brick)的包,其中的每个构件都是具有特定业务属性的 UI 模块。
  • Micro App 指的是小产品包,它通过 Storyboard 定义该产品的用户界面,包括路由的组织、界面使用的构件及其属性和事件配置等。
  • Brick Container 是整个系统的底层平台,它通过 Brick Kit 根据 Micro Apps 的配置信息,渲染对应的用户界面,并通过 DLLsBrick Package 提供一些公共依赖。

如果把它和乐高作类比:

  • Brick 对应单个积木块儿
  • Brick Package 对应一小包某类积木块儿
  • Micro App 对应一个具体的积木拼搭产品
  • Storyboard 对应产品组装说明书
  • Brick Kit 则是根据说明书自动挑选积木并组装成最终产品的机器人

由于 Storyboard 是声明式的,这使得用户界面可以轻易地实现运行时配置的能力。而每个 Brick 在技术上实际都是一个标准的 Custom Element,当前原生支持 React 框架和原生 JS。

开发方式

我们提供了两种开发方式,一种是可视化编排(推荐),一种是代码开发。两种方式都提供了 step by step 的简易教程,点击查看: