# 核心库 jiess-plus

## @jiess/plus 版本迭代记录

### 3.0.0

* 库名更换，将原 jiess-base 库并入 jiess 官方生态，形成 Jiess 强化库
* 本库内部实现了对 Jiess 相关的引入和安装，极大的简化了 Jiess 的使用过程

### 3.0.1

* 紧急修复一些导出的问题

### 3.0.2

* vue2 表头拖拽工具的优化

### 3.0.3

* 对模块的导出进行简化处理

### 3.1.0

* 对内置 Table 的全局参数，列表注入参数，以及动态参数规范化处理
* 导入 execFunction 工具函数

### 3.1.1

* 新增 ref 响应式对象同步$ref 节点方案

### 3.1.2

* diff 算法的优化
* 通过响应式对象中的`_initialTarget`直接获取目标对象，并对 values 初始化目标赋值的优化
* 通过响应式对象中的`_initialParent`直接获取父级代理，并对层级响应式更新进行优化

### 3.1.3

* SuperTable 中加入 tableInfo 字段，可记录当前列表相关信息，如本次接口请求，可用作列表导出参数
* 筛选区，列表工作栏的按钮可以方便的控制尺寸

### 3.1.4

* 优化对 vue 和 react 对象的识别字段
* 可手动控制构建响应式时是否需要对原对象克隆

### 3.1.5

* 对$ref 功能的修复，使其同时兼容 ref 响应式对象区组件节点
* 下拉框 options 对新结构响应式数据的兼容处理
* observe 观察器配置参数可初始注入 observe 函数
* 对所有的 Filter 组件与 Pager 组件进行排查，实现列表，分页，筛选区直接的联动交互

### 3.1.6

* searchTree 和 slotTree 的优化
* Scrollbar 的优化

### 3.1.7

* ExpandFilter 与 TableFilter 绑定回车事件
* ExpandFilter 对空格和回车的部分禁用与优化
* utils/table 统计对列表请求参数 trim 处理
* 针对 vue 弹框优化，弹框脚步可左右分别定义原件

### 3.1.8

* `JiessTable`暴露`initColumns`，方便处理最终的列表表头数据
* `JiessTabs`组件暴露`onLoaded`钩子，回调为`midders`
* 针对 nextTick 的重写，vue 环境接入原框架 nextTick，react 环境基于 setTimeout 模拟
* 进一步优化$ref 的加载与绑定

### 3.1.9

* ExpandFilter 组件解耦处理，以实现组件的单独使用，暴露 filter 操作对象
* SuperTable和JiessTable也向外暴露 midder 对象，方便外部使用
* 响应式的构建会过滤特殊属性和特殊对象
* 对自循环对象自动进行深拷贝代理
* vue2中启用inheritAttrs，解除标签和属性的关联
* area.render过程中，渲染Jiess组件时，会自动注入$area属性

### 3.1.10

* 响应式创建时，自动对自循环函数进行处理
* 响应式创建时，对特殊对象以及属性特殊处理
* 防抖函数对node环境的支持


### 3.1.11

* 新增编辑中推荐使用`midder[type].render`方案，由`items`接管页面渲染
* `JiessTable`组件中增加`areaBeforeDone`钩子，可用于控制新增编辑页面的渲染
* `JiessTable`组件中增加`areaDoned`钩子，可用于控制`action`的赋值方案
* 移除掉ExpandFilter组件中的weight排序方案
* `$defTag`重新改名为`$moTag`
* 追加`onBeforeRender`生命周期钩子，可以在渲染前获取所有原框架节点，通过返回数组的排序控制渲染顺序
* 移除原`$weight`内置属性，新的渲染节点排序方案由`onBeforeRender`取代

### 3.1.12

* 选择器对异步函数的重新支持
* `JiessDynamic`组件的优化与验证
* `tan`实例弹框时，对点击前的参数获取处理，并结合`JiessDynamic`实践验证
* `ActionButton`的升级改造，设置`mode=split-button`即可支持`Dropdown`模式 
* 对响应式机制进行优化，同时可支持非响应式数据的代理（开发warn:false属性）；优化开发体验
* 移除`JiessTable`中的`itemsParam`属性，直接调用`items`函数注入参数即可


### 3.1.13

* `ExpandFilter`组件，展开组件可自定义参数注入，如展开事件监听

### 3.2.0

* area快捷构建实现预览模式
* areaBeforeDone，areaDoned直接在midder上定义，以参数传入type
* 响应式渲染子元素，值为空时，不再返回空数组，而保存原样返回
* SuperTable的pager容器优化，实现更编辑的pager布局

### 3.2.1

* 下拉选择器和分组选择器新增字段映射
* 预览模式下组件个体可使用$mode，单独控制预览方案
* vue2环境中，el-inputNumber默认值定位`undefined`
* 实现area区域的重载能力

### 3.2.2

* $buildItem的暴露，以$开头的字段，在vue2中不做去空处理
* 对列表行数据表单的动态赋值的针对性的优化

### 3.2.3

* 新增扩展组件`TipText`：自动根据文本的显示缩略，鼠标划入展示`Tooltip`
* 在区域快捷渲染中集成`TipText`组件

### 3.2.4

* 进一步对`TipText`组件进行优化，统一使用`text`属性接受渲染参数
* `TipText`组件增加多行省略号模式，可自定义需要显示省略号的行数

### 3.2.5

* 针对`jiess-http`中接口定义层拦截器的优化，可方便实现接口数据过滤，如数据脱敏处理
* 先执行全局拦截器，再执行接口层拦截器；且接口层拦截器可接收全局拦截器的返回数据

### 3.2.6

* 数据对比函数`diff`对`Date`和`Promise`类型进行对比时的特殊处理

### 3.2.7

* 移除原Jiess组件的渲染标识，在Jiess组件层直接判断子内容是否需要渲染
* 对`$if`和`$elseIf`进行优化，均支持对Jiess组件的响应式更新组件
* 对原框架上下文对象`frame`进行优化，确保实时注入

### 3.2.8

* 对`area.call`渲染时的`initialValues`初始赋值进行优化
* 新增`vue2`和`vue3`快捷组件`RadioGroup`，原`react`已存在
* 对`TabsTable`组件优化，暴露出部分必要参数与事件
* 对`SuperTable`组件优化，支持更加灵活的自定义布局
* 对`SearchTree`组件优化，可以方便设置树型数据

### 3.3.0

* 对`Select`下拉的优化，解决vue3的Select多选模式下，默认值渲染的问题
* 注册Jiess时，提供了$page属性，可定义为函数，暴露内部上下文，也可以在其中使用hook，获取原框架信息
* 大规模重构表单的快捷构造，为后续灵活的支持各种其他UI库做铺垫

### 3.3.1

* 进一步解耦UI组件与框架的关联，并连带各种优化