更新记录 #

v1.1.0 (2017/9/7) #

  • 简化 createClass
  • 修正 flattenHooks BUG:如果 hooks 中只有一个函数,就不用再包一层
  • createElement 里不对 children 进行处理,延迟到 diff 时才创建用于比较的 vchildren
  • 修正 disposeElement BUG:如果存在 dangerouslySetInnerHTML 的情况,需要清空元素内部,不走遍历子虚拟 DOM 的分支
  • 修正 diffProps, SVG 元素是区分大小写 如 viewBox preserveAspectRation
  • 组件更新时,要检测 context 是否改变
  • 增加事件对象的 persist 方法
  • 修正 unstable_renderSubtreeIntoContainer 的回调 this 指向问题
  • 修正 unmountComponentAtNode BUG:#text 改为 #comment
  • 修正 cloneElement BUG
  • ref 改为在 createElement 里进行处理

v1.0.4 (2017/8/29) #

  • 简化 createClass

v1.0.3 (2017/8/24) #

  • disabled 的元素不能触发点击事件
  • 修正 mouseenter / mouseleave 在 IE6-8 中的 BUG,涉及到 relatedTarget 的正确获取与 LCA处理
  • 优化 setState 方法,虚拟 DOM 没有转换出对应的真实 DOM 时,不是能更新组件
  • 简化 alignVnode 的逻辑,减少插入列队的生成
  • react/lib 中添加一些简用的外围模块,如 ReactComponentWithPureRenderMixinshallowComparesliceChildren

v1.0.2 (2017/8/21) #

  • event.originalEvent 更名为 event.nativeEvent
  • 修正 polyfill中forEach 的 BUG
  • 移除 scheduler 模块
  • 移除 instanceMap 模块
  • 修正 typeNumber 在 IE6-8 下的 BUG
  • eventSystem.addGlobalEventListener 更名为 eventSystem.addGlobalEvent
  • 规避 insertBfore 在 IE8 下第二参数不能为 undefined 的问题
  • 修正 ref 延迟执行的 BUG,组件所在的 vnode 如果有 ref 属性,那么它应该放到此组件的 __pendingRefs 数组中,而不是放在父组件的 __pendingRefs 数组,此外 __pendingRefs 数组里的元素由对象改成函数
  • 确保组件在 componentDidMount 钩子执行 setState 后,所有回调应延迟到 componentDidUpdate 外执行
  • 确保 mountComponent 中实例应该尽快保存到 vnode
  • 修正 updateElement 方法中只执行一次 dangerouslySetInnerHTMLBUG
  • 处理 mouseenter/mouseleave 的兼容问题
  • 处理 focus/blur 的兼容问题

v1.0.1 (2017/8/7) #

  • 修复了在特定条件下调用 setState 时 IE 8 视图不更新的问题。

v1.0.0 (2017/7/28) #

  • 发布 QReact 正式版。