🆕 优化文档

This commit is contained in:
xujiang 2021-07-20 13:42:17 +08:00
parent f419caee14
commit 5641d33b7c
8 changed files with 320 additions and 8 deletions

1
.gitignore vendored
View File

@ -107,3 +107,4 @@ typings/
# production
/dist
/doc-dist

View File

@ -118,6 +118,35 @@ module.exports = {
},
],
},
{
title: '组件商店',
collapsable: false,
sidebarDepth: 1,
type: 'group',
children: [
{
name: 'intro',
title: '基本介绍',
path: '/zh/guide/componentShop/intro',
collapsable: false,
sidebarDepth: 2,
},
{
name: 'uploadCp',
title: '上传组件',
path: '/zh/guide/componentShop/uploadCp',
collapsable: false,
sidebarDepth: 2,
},
{
name: 'cpManage',
title: '组件审核',
path: '/zh/guide/componentShop/cpManage',
collapsable: false,
sidebarDepth: 1,
},
],
},
{
title: '私有化部署和二次开发',
collapsable: false,

View File

@ -2,9 +2,10 @@
<main class="home" :aria-labelledby="data.heroText !== null ? 'main-title' : null">
<header class="hero">
<h1 v-if="data.heroText !== null" id="main-title">
<img src="../imgs/common/logo.svg" :alt="data.heroAlt || 'hero'" /><span>{{
data.heroText || $title || "Hello"
}}</span>
<img
src="http://cdn.dooring.cn/dr/logo.ff7fc6bb.png"
:alt="data.heroAlt || 'hero'"
/><span>{{ data.heroText || $title || "Hello" }}</span>
</h1>
</header>
@ -71,12 +72,11 @@ $homePageWidth = 1080px
text-align center
img
width: 190px
height 50px
display inline-block
margin initial
margin-bottom 0
margin-right 20px
vertical-align sub
vertical-align -21px
h1
font-size 1.5rem
font-weight 600

View File

@ -1,4 +1,4 @@
<img src="../../img/common/logo.svg" alt="foo">
<img src="http://cdn.dooring.cn/dr/logo.ff7fc6bb.png" alt="dooring" width=200>
H5-Dooring 是一款功能强大,高可扩展的 H5 可视化页面配置解决方案,致力于提供一套简单方便、专业可靠、无限可能的 H5 落地页最佳实践。
@ -14,4 +14,4 @@ H5-Dooring 是一款功能强大,高可扩展的 H5 可视化页面配置解
## 为什么选择 Dooring
目前**github**已超过 3000+star上线 2 个月累计 500+用户使用,解决完善了 100+问题,后续会持续迭代,更新,自研优秀,先进的 lowcode/nocode 解决方案。
目前**github**已超过 4800+star上线 2 个月累计 1300+用户使用,解决完善了 100+问题,后续会持续迭代,更新,自研优秀,先进的 lowcode/nocode 解决方案。

View File

@ -0,0 +1,16 @@
<!--
* @Date: 2021-01-17 14:24:40
* @LastEditors: xuxiaoxi
* @LastEditTime: 2021-01-17 19:42:53
-->
# 组件审核
组件审批主要由网站管理人员来操作,当用户组件提交成功之后,客户端会通过消息信令通知管理员,管理员收到消息后会审核组件。那么整个过程也很简单,我们可以使用 websocket 来实现消息双向通信,完整流程如下:
<img src="http://cdn.dooring.cn/dr/WX20210720-133112%402x.png" />
通过以上的实现方式客户端和服务端就可以随时进行通信了。接下来我们看看审批的效果:
<img src="http://cdn.dooring.cn/dr/WX20210720-133329%402x.png" />

View File

@ -0,0 +1,25 @@
<!--
* @Date: 2021-01-17 14:24:40
* @LastEditors: xuxiaoxi
* @LastEditTime: 2021-01-17 19:42:53
-->
## 组件商店基本介绍
对于可视化搭建平台而言,其中一个核心的环节就是组件资产。用户在设计搭建页面时会消费各种各样的组件,但是对于不同的用户而言,组件的需求往往是不一样的,大部分的 lowcode 或者 nocode 平台都不能很好的解决用户这些定制化的组件需求,所以为了解决这一问题,组件商店就孕育而生。
<img src="http://cdn.dooring.cn/dr/WX20210720-131747%402x.png" />
## 组件商店工作流设计
我们要想实现完整的组件商店工作流,需要满足以下几点:
- 组件线上编辑(上传)模块
- 组件审核模块
- 组件更新/发布模块
- 组件管理(上架/下架/删除/下载)
有了以上4块的支持基本的组件商店就可以 work 了。具体流程如下:
<img src="http://cdn.dooring.cn/dr/WX20210720-132319%402x.png" />

View File

@ -0,0 +1,19 @@
<!--
* @Date: 2021-01-17 14:24:40
* @LastEditors: xuxiaoxi
* @LastEditTime: 2021-01-17 19:42:53
-->
# 上传组件
当“ 生产者 ”编写好组件代码之后,需要对组件自身进行定义。因为可视化平台组件物料很依赖平台的组件开发协议,我们需要按照平台的规范去上传规范的自定义组件,这样平台才能更好的理解应用组件,保持用户认知的一致性。
组件描述信息笔者这里设计了如下字段:
- 组件名称 (中文)
- 组件名 (英文,方便存库)
- 组件分类 (基础,可视化,营销,媒体等)
- 组件默认大小 (宽高)
- 组件图标 (方便用户认知,查找)
<img src="http://cdn.dooring.cn/dr/WechatIMG45705.png" />

View File

@ -562,8 +562,230 @@
## 文件上传
- `POST` /files/upload/free
先决条件:
- 用户已登陆
| 参数名 | 是否必选 | 类型 | 说明 |
| ------------- |:-------------:|:-----:| -------------:|
| File | true | File | 文件对象 |
返回示例
``` json
{
"state": 200,
"result": {
"filename": "H5-Dooring",
"url": "http://h5.dooring.cn/uploads/1_17ac208480d.png",
"size": 261972
},
"msg": "文件上传成功"
}
```
## 数据统计
### 数据大盘接口
### 页面埋点
- `GET` /vip/dashboard
先决条件:
- 用户已登陆
返回示例
``` json
{
"state": 200,
"result": {
"userNums": 1300,
"pageNums": 808,
"tplNums": 86,
"views": 60235,
"userList": []
}
}
```
## 组件商店
### 组件上传
- `POST` /visible/cp/save
先决条件:
- 用户已登陆
| 参数名 | 是否必选 | 类型 | 说明 |
| ------------- |:-------------:|:-----:| -------------:|
| react | true | string | react字符串 |
| css | true | string | css字符串 |
| schema | true | string | schema字符串 |
| form | true | object | 表单对象 |
返回示例
``` json
{
"state": 200,
"result": null,
"msg": "提交成功, 请等待审核..."
}
```
### 获取组件上传列表
- `GET` /visible/cp/list
先决条件:
- 用户已登陆
返回示例
``` json
{
"state": 200,
"result": [
{
"cpName":"test",
"cpField":"test",
"cate":"base",
"width":3,
"height":6,
"icon":"http://196.345.0.345:3000/uploads/1_17a8a4eaedf.png",
"ispass":3
},
{
"cpName":"test2",
"cpField":"test2",
"cate":"media",
"width":4,
"height":20,
"icon":"http://196.345.0.345:3000/uploads/1_17a8a4eaedf.png",
"ispass":1
}
],
}
```
### 获取组件详情
- `GET` /visible/cp/get
先决条件:
- 用户已登陆
| 参数名 | 是否必选 | 类型 | 说明 |
| ------------- |:-------------:|:-----:| -------------:|
| cate | true | string | 组件分类 |
| cpField | true | string | 组件英文名字段 |
返回示例
``` json
{
"state": 200,
"result": {
"react": "react代码",
"css": "css/less代码",
"schema": "schema的js/ts代码"
}
}
```
### 更新组件审批状态
- `POST` /visible/cp/update
先决条件:
- 用户已登陆
| 参数名 | 是否必选 | 类型 | 说明 |
| ------------- |:-------------:|:-----:| -------------:|
| cate | true | string | 组件分类 |
| cpField | true | string | 组件英文名字段 |
| ispass | true | number | 组件审核状态, 0 待处理 1 审核中 2 审核通过 3 审核不通过 |
返回示例
``` json
{
"state": 200,
"result": null,
"msg": "审批成功"
}
```
### 删除组件
- `DELETE` /visible/cp/del
先决条件:
- 用户已登陆
| 参数名 | 是否必选 | 类型 | 说明 |
| ------------- |:-------------:|:-----:| -------------:|
| cate | true | string | 组件分类 |
| cpField | true | string | 组件英文名字段 |
返回示例
``` json
{
"state": 200,
"result": null,
"msg": "删除成功"
}
```
### 下载组件源码
- `POST` /visible/cp/download
先决条件:
- 用户已登陆
| 参数名 | 是否必选 | 类型 | 说明 |
| ------------- |:-------------:|:-----:| -------------:|
| cate | true | string | 组件分类 |
| cpField | true | string | 组件英文名字段 |
返回示例
``` json
{
"state": 200,
"result": "组件压缩包地址"
}
```
## 数据源管理
### 获取用户数据源
- `GET` /vip/sourcedata/get
先决条件:
- 用户已登陆
返回示例
``` json
{
"state": 200,
"result": [],
}
```
### 保存用户数据源
- `POST` /vip/sourcedata/save
先决条件:
- 用户已登陆
| 参数名 | 是否必选 | 类型 | 说明 |
| ------------- |:-------------:|:-----:| -------------:|
| sourcedata | true | array | 用户数据源集合 |
返回示例
``` json
{
"state": 200,
"result": []
}
```