@jiess/plus
TypeScript icon, indicating that this package has built-in type declarations

1.6.15 • Public • Published

核心库 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

  • 打包的统一处理

Package Sidebar

Install

npm i @jiess/plus

Weekly Downloads

14

Version

1.6.15

License

ISC

Unpacked Size

1.26 MB

Total Files

77

Last publish

Collaborators

  • jiess