Skip to content

Releases: baidu/san

3.5.2

30 Mar 09:40
Compare
Choose a tag to compare
  • 【bug修复】- 同时调用组件的 detach 和 dispose 方法,组件声明周期无法到达 disposed。该问题为 3.3.0 引入
  • 【bug修复】- 组件的数据绑定名为 bool attribute,并且为静态值时,运行出错。该问题为 3.5.0 引入
  • 【bug修复】- 组件模板非法时,有时候不显示错误提示
  • 【优化】- 优化 bool 属性处理逻辑

3.5.1

22 Mar 17:27
Compare
Choose a tag to compare
  • 【bug修复】- 一个周期内对数组新增的元素再次设置值时,运行出错。该问题为 3.5.0 引入

3.5.0

22 Mar 03:18
Compare
Choose a tag to compare
  • 【变更】- 插值 HTML encode 行为变更为:默认进行 HTML encode,除非最后一个 filter 为 raw
  • 【变更】- 由于插值 HTML encode 行为变更,删除两个 filters:html 和 raw
  • 【变更】- ANode 部分属性从 IndexedList 改为数组,使 ANode 易于 JSON 序列化
  • 【新特性】- 组件声明时增加 delimiters 的支持,可配置插值两侧的分隔符
  • 【新特性】- 给组件默认添加 getComponentType(aNode) 方法,可支持运行时动态的创建组件
  • 【新特性】- 组件支持外部传入 id 做为 root element 的 id
  • 【优化】- 一些性能优化
  • 【优化】- 部分标签(如select、tr等)在老 ie 下不支持设置 html,创建和更新时使用 create + insert 操作做兼容
  • 【优化】- typescript 定义中添加全局 san 对象的定义
  • 【bug修复】- fire 方法会触发父组件使用 native 修饰符声明的事件
  • 【bug修复】- 为枚举值为布尔类型的枚举属性(如 draggable)赋值字符串时输出与期望不符
  • 【bug修复】- 对组件使用 for 时,当一次时钟周期多次数据更新导致未渲染的组件 index 发生变化时,视图更新不正确
  • 【bug修复】- 修复 typescript 定义中 DataTypeCheck 的定义错误
  • 【bug修复】- 修复 typescript 定义中 computed 属性 this 的定义错误

3.4.3

12 Feb 14:07
Compare
Choose a tag to compare

【bug修复】- 更改 template / slot / text 的结构,彻底解决复杂嵌套场景的更新不正确
【bug修复】- ie9 下 input[type=text] 双向绑定,用户输入的值更新失败
【优化】- 为常用 api 添加 typescript 的类型定义

3.4.2

21 Jan 15:24
Compare
Choose a tag to compare
  • 【bug修复】- 插值中包含自定义 filter 并且其后为非正常节点时,视图刷新不正确
  • 【bug修复】- 一个页面中包含多个 san 环境,生成的组件可能会冲突

3.4.1

16 Jan 07:39
Compare
Choose a tag to compare
  • 【bug修复】- 初始化组件时,传入 data 中的 undefined 项覆盖了 initData 中的返回项

3.4.0

10 Jan 06:44
Compare
Choose a tag to compare
  • 【新特性】- 数据 Data 对象新增 merge、apply 方法
  • 【变更】- 新的基于模板匹配的组件反解机制,代替原来的标记机制
  • 【bug修复】- 模板解析对 element attribute 的 = 两边不支持空白字符

3.3.2

04 Jan 02:57
Compare
Choose a tag to compare
  • 【优化】- scoped slot 的 数据声明,自动将 - 分割转换成 camel case
  • 【优化】- 组件初始化时,data binding 中的 undefined 项,不覆盖默认 data
  • 【优化】- autofocus 和 required 属性增加 boolean 处理
  • 【bug修复】- for 指令位于 template 下,视图更新会触发运行时错误
  • 【bug修复】- 文本节点位于 slot 或 template 中,如果父节点有 prev 兄弟元素,更新不正常
  • 【bug修复】- scoped slot 位于 for 中,列表数据删除可能导致运行错误
  • 【bug修复】- 使用 native 修饰符进行事件绑定,参数获取不到数据
  • 【bug修复】- UIWebView 环境下,双向绑定的输入框在输入法打开时可能更新数据失败

3.3.1

19 Dec 04:27
Compare
Choose a tag to compare
  • 【新特性】- slot 声明支持动态的 name
  • 【新特性】- scoped slot 允许访问当前 owner 所在环境的数据
  • 【新特性】- s-ref 指令支持获取 DOM 元素
  • 【优化】- 在 dev 版本中,模板解析提供更丰富的报错信息
  • 【优化】- 模板中允许元素声明 id 属性
  • 【优化】- for 元素更新行为为 clear all 时,保留 transition 效果
  • 【优化】- 事件明确声明为空参数时,不自动添加默认值 $event
  • 【优化】- 模板中声明 slot 属性的元素,DOM 视图中删除 slot attribute
  • 【优化】- 容忍组件反解中对多余的空白文本节点,自动清除
  • 【bug修复】- 带有 transition 的 for item 元素,在快速多次变更时,可能由于 child 不存在产生运行时错误
  • 【bug修复】- 双向绑定时,如果子组件在 inited 时 set data,owner data 未更新
  • 【bug修复】- input value 在双向绑定时可能存在 xss 漏洞
  • 【bug修复】- 文本节点在更新时可能多次转义

3.3.0

30 Nov 13:40
Compare
Choose a tag to compare
  • 【新特性】- 支持 template tag 声明自身不渲染元素只渲染内容
  • 【新特性】- 事件声明参数为空时,默认 $event
  • 【新特性】- 支持通过 native modifier,直接为组件的根元素绑定事件
  • 【新特性】- 支持通过 capture modifier,在捕获阶段绑定事件
  • 【新特性】- 支持 scoped slot
  • 【新特性】- 支持 transition 机制
  • 【新特性】- slot 支持 if 和 for 指令
  • 【新特性】- 组件实例上添加 slot 方法,可以获取组件内部 slot 插入的内容
  • 【新特性】- 组件实例上添加 nextTick 方法,避免组件实现需要 nextTick 必须显式依赖 san
  • 【新特性】- main 上暴露 NodeType 枚举对象
  • 【变更】- parseTemplate 的 ANode 去除 parent 的引用。消除循环引用后可以 JSON.stringify
  • 【变更】- ANode 上子节点命名由 childs 变更为 children
  • 【变更】- 组件 LifeCycle 对象静态化,main 上不再暴露 LifeCycle 类
  • 【优化】- data 的 push 和 unshift 操作返回新数组长度,和 JS Array 保持一致
  • 【优化】- 增加事件绑定到不存在方法时的错误提示
  • 【优化】- 当数组上有非数字索引的成员并发生变更时,添加判断使视图更新时不报错,增加健壮性
  • 【bug修复】- ssr 在多重循环下可能渲染不完整
  • 【bug修复】- input[type=file] 的 multiple 属性由于低级的拼写问题导致不支持
  • 【bug修复】- input value 使用双向绑定时,如果绑定值为 undefined,表单内容未自动转为空串