5.0.2 • Published 11 months ago

@jiess/core v5.0.2

Weekly downloads
6
License
MIT
Repository
-
Last release
11 months ago

核心库 jiess-core

@jiess/plus 版本迭代记录

1.2.0-beta.x

  • 新增:子组件与父组件共享上下文的拓展组件
  • 拓展:对Midder类追加订阅,广播的能力
  • 优化:$if内置属性在JiessComponet的使用逻辑
  • 底层:对底层的渲染逻辑进行了优化,更加健壮

1.2.x

  • 优化:对Midder追加tag,以后订阅覆盖先订阅的原则,防止多操作时重复添加订阅

1.3.0-beta.x

  • 响应式的整体重构,优化结构和性能
  • 移除不常用的API: JPromise

1.3.1

  • 修复一个和插槽相关的BUG
  • 其他一些细微优化

1.3.2

  • 新增内置属性 $render 用于定制化渲染:如实现 react 环境使用 vue 组件

1.3.3

  • 追加 $props 字段,用于存放外部传入的完整数据
  • 修复了内置key算法造成的BUG

1.3.4

  • 从使用习惯来考虑,移除 $props 字段,将完整的传入数据放在第二个形参

1.3.5

  • 将 radio,checkbox,select 统一起来,通过 options 配置生成子项

1.3.8

  • 将关联性较弱的Midder模块移出到@jiess/utils中

1.3.9

  • 优化处理各环境下默认插槽和children的关系

1.3.0-beta.x

  • 解决获取原框架props参数变动的问题,从而实现如ant.Form.Item下封装表单组件的能力

1.4.0-beta.x

  • 新增对 uni-app【vue2环境】的支持
  • 新增对 uni-app【vue3环境】的支持
  • 新增对 react-native 的支持

1.4.1

  • 对插槽进行优化,如果没对插槽指定默认参数,则不进行任何渲染(原来会渲染成空div)
  • 追加JiessFragment空组件,解决顶层元素动态更新的问题

1.4.3

  • 解决JiessFragment无法支持多层嵌套的问题
  • 追加内置属性$injectPJR,可以观察注入父级JsRender的过程
  • 优化vue2环境根节点的判断,展开后大于两个子元素,才自动追加外层
  • 插入子集的元素,强制同步上下文,使插入元素正确响应式更新
  • 对于数据注入provide/inject的全面优化和测验

1.4.4

  • 进一步对provide/inject进行优化
  • 增加vue2环境下的构建响应式的方法
  • 修复hookData与生命周期自动关联的问题
  • 优化vue2环境下事件的提取方案:排除on前缀,并且将首字母改成小写,其余部分的字符串保持不变
  • 修复了vue2环境下空数据过滤的产生的属性更新的bug
  • 对普通节点追加生命周期观察,并返回相应ref等参数
  • 移除对Jiess组件节点的生命周期观察
  • 移除内置属性$injectPJR
  • 对计算属性的赋值取值增加了value约束

1.4.5

  • 对响应式的进一步优化
  • 生命周期回调钩子允许为异步函数
  • 对观察器的触发机理进行重构,实现了手动观察响应式数据时,对最终结果值的调整

1.4.6

  • 追加add方法添加元素时按权重排序的能力 $weight
  • 在setup中获取当前组件的name,可用于中介者标记
  • 优化对元素注入key的算法

1.4.7

  • 内部梳理,规范化内部结构
  • 重写diff算法,用于判定响应式新旧值的更新
  • 对响应式赋值自循环对象的比对结果进行优化
  • 提供delete移除属性并触发响应式观察的能力

1.5.0

  • react环境下采用函数式组件构建基础原框架组件
  • react环境下的ref节点获取采用回调式
  • vue3环境下加入指令构建的功能
  • props仅参与数据类型的校验,不再过滤数据
  • 对Jiess组件赋予的Jiess观察器,直接穿透组件,不做处理
  • $watchEffect在同步模式下,提供第一时间的变动参数

1.5.1

  • 修复了Jiess观察器对Jiess组件透传后,$if在使用时不生效的问题
  • vue和react环境中均使用模拟forceUpdate来更新页面
  • 对$isReactive进行算法优化
  • 对Observe观察触发器增加forceUpdate属性,用于自定义diff算法

1.5.2

  • 修复对全局注册的Jiess组件赋予Jiess观察器,关联的穿透问题

1.5.4

  • 移除和父级共享上下文的能力(该功能使用场景较少,且较大的增加复杂度)
  • 增加对setup异步函数的支持,大幅度提升开发体验
  • 对else和elseIf的优化和调试
  • 对数据注入,以及插槽插入元素,动态更新元素的上下文进行完美绑定
  • 移除$render,一是函数式react与vue的节点获取不统一,会造成冗余代码;另一方面可使用ref替代

1.5.5

  • vue2环境中,is属性从attrs中读取,而不再从props中读取
  • _static_为前缀的key,在Jiess构建过程中,直接应用该key

1.5.6

  • vue2中不允许使用is传递参数,所以JiessComponent中使用component接收渲染的Jiess组件
  • 数据校验的优化,对各种状态下的数据校验进行了验证

1.5.7

  • 对底层进行了优化,无功能性的变动

1.5.8

  • 初始注册jiess,不带param参数时的问题修复
  • 统一三种技术栈对class的定义:
    • 在vue3中用class定义类名
    • 在vue2和react中用className定义类名
    • 在Jiess中用class或className均可直接定义类名

1.6.0

拆分jiess实例

为支持按需引入,将jiess实例上的工具方法拆分出来,以工具函数的形式导出:

  • 使用时需要以导入的形式引入工具
  • 配合自动导入插件,可实现无导入使用

移除内置全局注册

  • 在以往安装Jiess时,会自动在上下文注入jiess实例,现已移除,可手动注入
  • 在以往的vue环境中,会自动注册全局组件,现已移除,可手动注册JiessComponent实现

其他迭代点

  • 解除$component对注册组件的限制,实现了对vue和react组件的全局注册
  • vue3的JiessComponent对指令的支持
  • add加入的元素为Promise类型,则取出真实值,实现异步加载
  • Observe观察器增加了动态矫正功能
  • children和childs合并处理,不再按权重二选一
  • vue2插槽可直接作用于JsRender节点

1.6.1

  • 安装Jiess时需要提供两个参数,并移除Jiess实例的$param 参数一:合并于Jiess实例中 参数二:动态注入组件上下文中

1.6.2

  • Jiess实例获取的优化
  • children属性与childs集合合并时的优化
  • Jiess实例中增加缺省属性$render,可用于接管createElement的渲染

1.6.3

  • 移除框架中针对taro和uni兼容的旧代码
  • 响应观察器中,result结果值的矫正
  • package.json导出的简化
  • this.add的链式处理
  • 合并子元素的优化处理

1.6.4

  • Observe观察器优化,在初始化时会获取初始值,从而取代绑定回调获取初始值
  • 对$show的优化,解决与display:none的冲突

1.6.5

  • 进一步对$show进行优化,当值为undefined时,该节点不做隐藏显示处理

1.6.6

  • 组件props数据校验的优化:即针对JiessRef数据传参时的特殊处理
  • 优化观察器对响应式数据的数据矫正,支持直接通过第三参提供函数了

1.6.7

  • 追加了 isRef 校验,可以校验组件传入的数据是否为JiessRef数据类型
  • 对响应式观察时默认值的优化,使得异步矫正时,能够第一时间呈现defaultValue

1.6.8

  • 在异步矫正响应式数据时,对defaultValue以及默认值的优化
  • 对beforeUpdate和updated增加零时生命周期的能力,该回调仅执行一次,就立即销毁

1.6.9

  • 对响应式更新后的旧节点的响应关系进行销毁处理(含子组件中的所有子节点),防止旧节点中的响应式再次执行
  • 针对一个观察者多处使用(不建议),可配置allowDestory属性,手动控制是否允许响应式节点观察器被销毁
  • 从新启用$render内置属性,只是其概念与旧版不一样,提供一个函数,用于定制化构造JsRender配置对象
  • 对children属性,子元素,default插槽中的节点进行梳理,打通了节点中使用children响应式

1.6.10

  • 针对1.6.9的问题的紧急修复

1.6.11

  • 观察者函数$val接收的值不为响应式数据的灵活处理方案
  • 当Jiess组件直接使用$if:false时,导致的异常保存处理

1.6.12

  • 对react环境下的基础组件进行优化
  • react环境下的基础组件引入useTransition,并将isPending, startTransition放入组件上下文
  • 在Jiess组件中追加了methods和data两个数据,分别用于暴露方法和数据

1.6.13

  • 关于子元素渲染的权重,三者取其一: default > children > childs
  • 移除mergeChildren,子元素不再合并处理(即三选一),权重关系同上
  • 对插槽的细节优化,以及多条件验证
  • 修复了JIESS_IS的入口验证的BUG

1.6.14

  • 组件的入参注入到上下文中,方便data和methods中获取
  • 对于非响应式数据,初始化式也会执行矫正器,使数据矫正更统一
  • 对JsRender和Context中的内置方法和属性统一前缀短横线

1.6.15

  • 打包的统一处理

2.0.0

  • 移除核心语法this.render,完全使用配置式;向低代码迈进
  • 原来render函数的首参后子元素,统一由children接管
  • Jiess组件插槽的定义由this.slot(),变为$slot:插槽名
  • 总结:本次迭代重新回到以配置为核心的主导思想,代码更加纯粹

2.0.1

  • 移除观察者中的响应式修正correct
  • 原来$val定义响应式观察着,变为$proxy:响应式对象
  • $ref定义的响应式数据,默认观察其value
  • 多层响应式嵌套观察的重复叠加优化

2.0.2

  • $set的优化,可以加入任意类型的数据
  • 一些综合性的优化

@jiess/core 版本迭代记录

5.0.0

  • 重新启用 @jiess/core 库,但原记录中的代码和当前代码完全不同
  • 库名更换,将原@jiess/plus库更新为当前的@jiess/core
  • 原观察模式model字段,改为flush

5.0.1

  • 全面自循环移除函数,从而受控区域不再有自循环函数的困扰
  • 全面使用clone自循环移除函数,从而受控区域不再有自循环函数的困扰
  • 响应式创建不再需要深度控制

5.0.2

  • 新增ref响应式对象同步$ref节点方案
  • 各种更新,与@jiess/plus@3.1.8一致
5.0.2

11 months ago

5.0.1

12 months ago

5.0.0

1 year ago

3.3.7

3 years ago

3.3.6

3 years ago

3.3.1

3 years ago

3.3.0

3 years ago

3.3.5

3 years ago

3.3.4

3 years ago

3.3.3

3 years ago

3.3.2

3 years ago

3.3.0-bata.3

3 years ago

3.3.0-bata.2

3 years ago

3.3.0-bata.1

3 years ago

3.2.1

3 years ago

3.0.13-beta

4 years ago

3.1.1

3 years ago

3.1.0

3 years ago

3.0.15-beta

3 years ago

3.2.0-bata.3

3 years ago

3.2.0-bata.2

3 years ago

3.2.0-bata.1

3 years ago

3.1.0-beta.1

3 years ago

3.0.14-beta

4 years ago

3.0.5-beta

4 years ago

3.0.2-beta

4 years ago

3.0.9-beta

4 years ago

3.0.11-beta

4 years ago

3.0.7-beta

4 years ago

3.0.10-beta

4 years ago

3.0.8-beta

4 years ago

3.0.12-beta

4 years ago

3.0.0-beta

4 years ago

3.0.6-beta

4 years ago

3.0.1-beta

4 years ago

3.0.4-beta

4 years ago

3.0.3-beta

4 years ago

1.9.14

4 years ago

1.9.13

4 years ago

1.9.12

4 years ago

1.9.11

4 years ago

1.9.10

4 years ago

1.9.9

4 years ago

1.9.8

4 years ago

1.9.7

4 years ago

1.9.6

5 years ago

1.9.5

5 years ago

1.9.4

5 years ago

1.9.3

5 years ago

1.9.2

5 years ago

1.9.1

5 years ago

1.9.0

5 years ago

1.8.16

5 years ago

1.8.15

5 years ago

1.8.14

5 years ago

1.8.13

5 years ago

1.8.11

5 years ago

1.8.12

5 years ago

1.8.10

5 years ago

1.8.9

5 years ago

1.8.8

5 years ago

1.8.7

5 years ago

1.8.6

5 years ago

1.8.5

5 years ago

1.8.4

5 years ago

1.8.3

5 years ago

1.8.2

5 years ago

1.8.1

5 years ago

1.8.0

5 years ago

1.7.22

5 years ago

1.7.21

5 years ago

1.7.20

5 years ago

1.7.19

5 years ago

1.7.17

5 years ago

1.7.18

5 years ago

1.7.16

5 years ago

1.7.14

5 years ago

1.7.15

5 years ago

1.7.13

5 years ago

1.7.12

5 years ago

1.7.11

5 years ago

1.7.10

5 years ago

1.7.9

5 years ago

1.7.8

5 years ago

1.7.7

5 years ago

1.7.6

5 years ago

1.7.5

5 years ago

1.7.4

5 years ago

1.7.3

5 years ago

1.7.2

5 years ago

1.7.1

5 years ago

1.7.0

5 years ago

1.6.13

5 years ago

1.6.12

5 years ago

1.6.14

5 years ago

1.6.11

5 years ago

1.6.10

5 years ago

1.6.9

5 years ago

1.6.8

5 years ago

1.6.7

5 years ago

1.6.4

5 years ago

1.6.3

5 years ago

1.6.6

5 years ago

1.6.5

5 years ago

1.6.2

5 years ago

1.6.1

5 years ago

1.6.0

5 years ago

1.5.12

5 years ago

1.5.11

5 years ago

1.5.13

5 years ago

1.5.10

5 years ago

1.5.9

5 years ago

1.5.8

5 years ago

1.5.7

5 years ago

1.5.5

5 years ago

1.5.6

5 years ago

1.5.4

5 years ago

1.5.3

5 years ago

1.5.2

5 years ago

1.5.1

5 years ago

1.5.0

5 years ago

1.3.6

5 years ago

1.3.5

5 years ago

1.3.4

5 years ago

1.3.3

5 years ago

1.3.2

5 years ago

1.3.1

5 years ago

1.3.0

5 years ago

1.2.3

5 years ago

1.2.2

5 years ago

1.2.0

5 years ago

1.2.1

5 years ago

1.1.8

5 years ago

1.1.7

5 years ago

1.1.6

5 years ago

1.1.5

5 years ago

1.1.4

5 years ago

1.1.3

5 years ago

1.1.1

5 years ago

1.1.0

5 years ago

1.0.9

5 years ago

1.0.8

5 years ago

1.0.7

5 years ago

1.0.6

5 years ago

1.0.5

5 years ago

1.0.4

5 years ago

1.1.2

5 years ago

1.0.3

5 years ago

1.0.2

5 years ago

1.0.1

5 years ago

1.0.0

5 years ago