升级日志
2.4.3
- 🐞修正
Dropdown
组件按钮内间距过大的问题。
2.4.2
- 🐞重构了
Button
组件以解决在动态切换disabled
/loading
属性时过渡动效丢失的问题。 - 🐞修复了
veui-loader
中global
选项没有正确处理string
类型配置的问题。
2.4.1
- 🐞修复了
sideEffects
配置错误导致依赖组件类型判断的逻辑失效的问题。
2.4.0🪆 Nesting Dolls
- 💡新增全局布局组件
Layout
/Header
/Sidebar
/Footer
/Content
。 - 🐞修复了
Badge
组件的max
prop 没有正常响应全局设置的问题。
2.3.4
- 🐞修正了单选
Select
/Cascader
组件在有已选项时,展开下拉浮层可能导致页面滚动位置跳动的问题。
2.3.3
- 🐞修正了动态添加/移除
Column
组件时可能导致顺序不正确的问题。 - 🐞修正了
Select
组件在非受控模式下下拉菜单中当前激活项显示不正确的问题。 - 🧪为
Calendar
组件新增了实验性的ui
样式display
。
2.3.2
- ⚠️
将对
dls-icons-vue
的依赖更新为2.0.0
。其中:quality-circle
图标重命名为grade-circle
;full-square
图标重命名为full-circle
。
- 🐞修正了
Cascader
组件在复选模式下搜索框位置不正确的问题。 - 🐞修正了
Table
组件通栏展开行、footer 行高度不正确的问题。
2.3.1
- 💡优化了下拉浮层展开时列表滚动到激活项的功能,避免可见的闪动。
- 💡在滚动锁定开启时尝试使用原生的
scrollbar-gutter
来避免页面内容整体抖动。 - 💡优化了
v-drag.sort
指令在 Safari 下在transform
容器内拖动时拖动元素初始样式的覆盖场景。 - 🐞修正了
v-tooltip
指令提示内容没有实时响应式更新的问题。 - 🐞升级了
Loading
组件的加载动效,避免了在 Chrome 下可能由于动画不同步造成的闪动。
2.3.0🏍️ Motorcycle
- ⚠️
Pagination
组件默认不展示每页数量选择器。 - 💡
Autocomplete
组件的strict
prop 行为对齐到Input
组件的strict
prop,不再表示限制只能选择datasource
中的值。 - 💡废弃
Autocomplete
组件的suggest
事件,当用户采纳建议时额外触发新增的select
事件。 - 💡
Autocomplete
组件新增maxlength
prop 来限制值的长度。 - 💡
Pagination
组件新增show-total
/show-page-size
/show-goto
prop 来分别指定是否显示项目总数/每页条数/跳转到指定页。将goto
prop 废弃并重命名为show-goto
。 - 💡
v-tooltip
指令新增修饰符overflow
,用来指定仅当目标元素内容发生溢出时才显示悬浮提示。 - 💡
Column
组件新增tooltip
prop,用于指定某列内容溢出时展示的悬浮提示文本。 - 🐞修正大部分输入型组件的一些事件无法作为表单校验的触发器。涉及组件包括:
Autocomplete
/Checkbox
/Input
/Radio
/Switch
/Textarea
。 - 🐞修正
Uploader
组件继续上传按钮的样式问题。 - 🐞修正
Carousel
组件切换时报错的问题。 - 🐞优化搜索类组件对 Unicode 代理对与 Zero Width Joiner (
U+200D
) 的支持。 - 🐞修正
Table
组件的自定义 CSS 属性--dls-table-cell-lines
/--dls-table-head-cell-lines
默认值没有设置为1
的问题。
2.2.1
- ⚠️
Anchor
组件的target-offset
/sticky-offset
使用数值时不再作为比例系数,而是作为绝对px
值。 - 💡
Anchor
组件的target-offset
/sticky-offset
支持传入如'10%'
格式的字符串,用于支持比例系数。 - 🐞修正
Button
组件在 Safari 浏览器上的样式问题。 - 🐞修正
DatePicker
组件在 Safari 浏览器上点击快捷方式报错的问题。 - 🧪
Table
组件的自定义 CSS 属性--dls-table-cell-lines
/--dls-table-head-cell-lines
默认值更新为1
,可以通过设置为auto
来设置自适应高度。
2.2.0🪗 Accordion
- 💡为
Accordion
/Collapse
组件新增ui
样式simple
/basic
/strong
/bordered
/borderless
/dull
。 - 💡为
Accordion
/Collapse
组件新增toggle-position
prop,用于自定义展开/收起箭头的位置。 - 💡为
Collapse
组件新增title-after
插槽,用于自定标题后缀内容。 - 💡为
Popover
组件新增title
prop 与title
插槽,用于自定义标题内容。 - 💡为
Popover
组件新增foot
/ok-label
/cancel-label
prop 与foot
插槽,用于开启底部操作区并自定义操作按钮文本。 - 🐞修正
Tabs
组件销毁过程中触发数据变化的问题。 - 🐞修正
Anchor
组件在滚动容器的 CSSscroll-behavior
为smooth
时下点击项目导致的滚动会进一步影响激活项的问题。 - 🐞修正
Anchor
组件的容器样式可能导致进入/退出吸附状态时抖动的问题。 - 🐞去除了
Anchor
组件初始状态的自动滚动,以避免和浏览器的默认行为冲突。 - 🐞修正
Table
组件在切换selectable
/expandable
时没有更新布局的问题。 - 🧪为
Table
组件新增自定义 CSS 属性--dls-table-cell-lines
/--dls-table-head-cell-lines
,用于指定显示固定内容/表头行数的表格。 - 🧪为
Accordion
组件新增自定义 CSS 属性--dls-accordion-gutter
,用于自定义折叠面板间距。
2.1.7
- 💡为
Link
组件新增全局配置项link.routerLink
,用于在路由模式下允许使用除了<router-link>
以外的组件,比如在 Nuxt 项目下使用<nuxt-link>
。 - 🐞修正
Progress
组件的状态一致性问题。 - 🐞修正
Uploader
组件的convert-response
无法通过ConfigProvider
组件进行局部配置的问题。 - 🐞修正
Textarea
/Calendar
/Input
组件在 Safari 下的样式问题。 - 🐞修正
DatePicker
组件的下拉浮层在溢出视口时没有正确左右翻转的问题。 - 🐞修正
v-tooltip
指令在目标元素销毁时可能没有消失的问题。
2.1.6
- 💡为
Tooltip
/Popover
组件新增aim-center
prop,用来支持浮层箭头始终指向目标元素中心的模式。 - 💡为
RadioButtonGroup
/CheckButtonGroup
组件新增ui
选项stable
,来实现多行显示多个按钮组时更整齐的视觉效果。 - 🐞修正
Tabs
组件在路由模式下active
数据可能没有正确响应路由变化的问题。 - 🐞修正
Tabs
组件在移除最后一个标签页时active
计算不正确的问题。 - 🐞修正
DatePicker
组件的placeholder
类型描述漏掉Array
的问题。 - 🐞修正
Table
组件固定列z-index
过低可能导致被滚动内容穿透的问题。 - 🧪为
RadioButtonGroup
/CheckButtonGroup
组件分别新增自定义 CSS 属性--dls-radio-button-min-width
/--dls-checkbox-button-min-width
,用于自定义组内按钮项的最小宽度。
2.1.5
- 🐞修正
Tabs
组件在路由模式下可能会没有正常激活标签项的问题。 - 🐞将
CheckButtonGroup
/RadioButtonGroup
组件的样式 token 升级到最新版本,以解决无法与最新版本 less-plugin-dls 共同工作的问题。 - 🐞修正
RadioGroup
组件未实现可受控功能的问题。 - 🧪为
Field
组件新增自定义 CSS 属性--dls-field-label-width
,用于自定义表单项文字标签列的宽度。
2.1.4
- 🐞修正了
veui/dist/locale.*.esm.js
没有被标记入sideEffects
配置的问题。
2.1.3
- 💡为
RadioGroup
/CheckboxGroup
/RadioButtonGroup
/CheckboxButtonGroup
新增Popover
弹层提示支持。新增数据源desc
字段及对应的desc
作用域插槽。 - 💡支持搜索的组件
Autocomplete
/Cascader
/SearchBox
/Select
/Dropdown
的match
prop 返回值现在在仅有一段匹配时可以直接返回[number, number]
。 - 🐞修正了 locale 包的 ESM 打包版本没有引用 VEUI 的 ESM 版本的问题。
- 🐞修正了
DatePicker
组件清除功能有时不正常的问题。 - 🐞修正了
Select
/Dropdown
组件可能出现两个滚动条的样式问题。 - 🐞修正了
Table
在无边框样式下组件固定列阴影处有 1px 偏差的问题。
2.1.2
- 💡
veui-theme-dls-icons
新增产出文件:dist/icons.esm.js
ESM 版本。
2.1.1
- ⚠️组件
Autocomplete
的match
prop 参数签名从(item, keyword, ancestors)
变更为(item, keyword, { ancestors })
。 - ⚠️将
Carousel
组件的indicator-alignment
prop 重命名为indicator-align
。 - 💡
为
RadioButtonGroup
/CheckButtonGroup
新增ui
样式simple
,并支持跨行样式。 - 💡
Button
组件现在可以在禁用状态下响应除了click
以外的事件,并可以接收焦点。 - 💡
为支持搜索的组件
Autocomplete
/Cascader
/SearchBox
/Select
/Dropdown
新增match
/filter
prop。match
函数签名:(item, keyword, { ancestors }) => boolean | Array<[number, number]>
以支持自定义高亮逻辑;filter
函数签名:(item, keyword, { ancestors, offsets }) => boolean
以支持自定义搜索命中逻辑。
2.1.0🌰 Chestnut
- 💡
新增了
ConfigProvider
组件,用于对局部组件进行全局配置的自定义。 - 💡
对
Carousel
组件进行了功能、样式升级:indicator
prop 新增bar
/dot
值,用于指定播放指示器的样式类型。其中bar
用于替换之前的radio
(radio
也保持兼容支持)。- 新增了
effect
prop,用于指定轮播切换效果,其中fade
仅在切换组个数与同时显示个数相同时生效。 - 新增了
vertical
prop,用于支持纵向布局的轮播。 - 新增了
indicator-alignment
prop,用于支持指示器的相对于布局方向的位置。 - 新增了
indicator-position
prop,用于支持指示器显示在轮播容器的内部/外部。 - 新增了
controls-position
prop,用于支持切换按钮相对于布局方向的位置。 - 新增了
slide-aspect-ratio
prop,用于指定每个轮播项的纵横比。 - 新增了视频轮播项的支持,并新增
options
prop 用于指定不同轮播项类型的默认配置。 - 新增了
slides-per-view
prop,用于指定同时显示多少个轮播项。 - 新增了
slides-per-group
prop,用于指定每次前后切换的一组包含多少个轮播项。
- 🧪
为
Carousel
组件新增自定义 CSS 属性:--dls-carousel-slide-gutter
:轮播项的间距;--dls-carousel-transition-duration
:轮播一次切换的持续时间。
- 🐞修正了
Switch
组件加载状态没有使用Loading
组件的问题。
2.0.6
- 🐞优化了
Dialog
、Drawer
及Lightbox
等触发模态层组件释放滚动锁定的逻辑,已避免模态层关闭时进行路由跳转可能导致解锁逻辑没有执行的问题。
2.0.5
- 🐞修复
Input
组件开启trim
后无法输入带空格的文本的问题。
2.0.4
- 🐞修复
Uploader
组件遗漏的服务端渲染时的异常。
2.0.3
- 💡
Input
组件新增trim
prop,用来给输入值清除前后的空格。 - 🐞修复
Checkbox
组件初始化时触发全局点击事件的问题。 - 🐞修复
Textarea
组件在autoresize
时,当最初渲染在隐藏容器内展现后高度不正确的问题。
2.0.2
- 💡
在 UMD 版本输出中新增整体注册功能,将自动注册所有组件并启用 VEUI 的所有插件。
使用方法
<div id="app"> <v-button ui="primary">OK</v-button> </div>
Vue.use(veui, { prefix: 'v' }) // prefix 可选,默认为 `veui` new Vue({ el: '#app' })
- 🐞修正了
Uploader
组件在 SSR 环境下异常的问题。 - 🐞修正了
Uploader
组件渲染的文件列表可能超过max-count
定义的上限的问题。 - 🐞修正了
options
参数在toast
插件调用时没有正常生效的问题。 - 🐞修正了
veui-theme-dls
单独打包输出的样式顺序问题。 - 🐞修正了
Tag
组件在深色背景下显示效果不符合预期的问题。
2.0.1
- 🐞修正了
Menu
组件item-label
slot 范围过大的问题。
2.0.0📅 Calendar
- ⚠️移除了
Table
组件的keys
prop,请使用key-field
prop 代替。 - ⚠️移除了
Tag
组件的closable
prop 和close
事件,请分别使用removable
prop 和remove
事件代替。 - ⚠️移除了
Uploader
组件的extensions
prop,请使用accept
prop 代替。 - ⚠️移除了
Uploader
组件的uploadFiles
方法,并将triggerUpload
方法更名为startUpload
。 - ⚠️移除了
v-drag
指令的draggable
选项,请使用disabled
选项代替。 - ⚠️移除了
v-drag.sort
指令的callback
选项,请使用sort
选项代替。 - ⚠️移除了校验规则的
message
自定义模板的%{arg}
语法,请使用{arg}
语法代替。 - 🐞修复了
Uploader
组件列表切换动效不正确的问题。
2.0.0-rc.5
- 🐞修正了
Nav
组件从当前项目移动到下拉浮层会导致当前项目关闭的问题。 - 🐞修正了
Table
组件的过滤器下拉浮层出现两个滚动条的问题。 - 🐞修正了
veui
公共模块导出可能出现组件未定义的情况。 - 🐞修正了部分组件的语言配置未打包到 UMD 版本输出的问题。
- 🐞修正了 rc.4 版本错误引入
Dropdown
组件的strong
样式。
2.0.0-rc.4
- 💡
veui
产出中新增文件:dist/veui.js
UMD 版本,包含中英文语言包。dist/veui.esm.js
ESM 版本,不包含中英文语言包。dist/locale.en-US.esm.js
英文语言包。dist/locale.zh-Hans.esm.js
中文语言包。
- 💡
veui-theme-dls
产出中新增文件:dist/dls.js
UMD 版本,Baidu DLS 主题包。dist/dls.esm.js
ESM 版本,Baidu DLS 主题包。
- 💡
veui
的公共模块导出调整为:ESM
import { Button, // components config, i18n, validation, // managers useControllable, useSearchable, // mixins $alert, $confirm, $prompt, $toast, // plugins drag, outside, resize, nudge, longpress, tooltip // directives } from 'veui'
全局对象
<script src="/path/to/vue.js"></script> <script src="/path/to/veui/dist/veui.js"></script> <script src="/path/to/veui-theme-dls/dist/dls.js"></script> <script> const { Button, i18n, outside } = window.veui </script>
- 🐞
Dropdown
组件现在支持ui="strong text"
。 - 🐞修正了
Dialog
组件的draggable
prop 失效的问题。 - 🐞修正了
Drawer
组件的overlay-class
prop 没有正确输出的问题。 - 🐞修正了
v-drag
指令在非使用target
选项非受控拖动时失效的问题。 - 🐞修正了
v-drag.sort
在 Safari 下容器有transform
时产生偏移的问题。 - 🐞修正了
Uploader
组件按住图片拖拽排序时失效的问题。
2.0.0-rc.3
- ⚠️
v-drag.sort
指令的callback
选项重命名为sort
。参数从(toIndex: number, fromIndex: number)
修改为(fromIndex: number, toIndex: number)
。同时排序回调不再需要关心移动动画的完成状态。 - ⚠️
v-drag
指令的draggable
选项被disabled
选项取代,默认值为false
。 - ⚠️移除全局配置项
drag.prefix
。 - 💡为
v-drag
指令新增选项handle
,可用于指定拖动的“把手”元素。 - 🐞修正
Lightbox
组件可能产生重复key
的问题。
2.0.0-rc.2
- 🐞修正
NumberInput
组件无法正常清空的问题。
2.0.0-rc.1
- 💡为
Popover
/Tooltip
/AlertBox
/ConfirmBox
/PromptBox
/Dialog
/Select
/Dropdown
/Lightbox
/DatePicker
/TimePicker
/SearchBox
/Cascader
/CascaderPane
等组件新增overlay-style
prop,用于自定义浮层样式。 - 💡
Link
组件现在支持绑定通用的鼠标、键盘事件,无需使用.native
修饰符。 - 🐞修复
Nav
组件项目在光标悬浮状态下的样式问题。 - 🐞修复
Select
组件的 slot prop 中缺失close
方法的问题。 - 🐞修复
NumberInput
组件在非法值的基础上使用步进操作产生NaN
的问题。 - 🐞修复
Radio
组件在有相同name
的组件时,因为其它同组组件被选中导致的 DOM 状态与组件状态不同步的问题。 - 🧪为
Select
/Dropdown
/SearchBox
/Cascader
新增--dls-dropdown-max-display-items
配置支持,见2.0.0-rc.0
版本实验性功能说明。
2.0.0-rc.0
- ⚠️
v-drag.sort
指令的callback
函数参数(toIndex, fromIndex)
中的toIndex
参数含义变更,从原来的“移动到toIndex
前”变更成“移动到toIndex
处”。 - 💡为
Overlay
/Autocomplete
等组件新增overlay-style
prop,用于自定义浮层样式。 - 💡新增
v-tooltip
指令,用于指定全局共享的浮层提示。 - 💡优化了
v-drag.sort
的移动触发交互,使拖动排序更顺畅。 - 🐞修复 modal 类型浮层的 focus trap 功能。
- 🧪
新增支持通过给浮层设置 CSS 自定义属性
--dls-dropdown-max-display-items
来设置Autocomplete
组件下拉浮层最大显示项目数,超出此高度将触发滚动。(给浮层设置样式可通过overlay-class
/overlay-style
prop 的方式。)使用示例
<!-- 配置最多显示 6 个选项(为提高在溢出且隐藏滚动条环境中的可访问性, --> <!-- 实际最大高度为 6.5 个选项的高度以提示更多选项的存在) --> <veui-dropdown :overlay-style="{ '--dls-dropdown-max-display-items': 6 }" .../>
2.0.0-beta.33
- 💡
新增了部分组件的文案配置 prop(#750),具体包括:
Dialog
/Drawer
/ConfirmBox
/PromptBox
组件新增ok-label
/cancel-label
prop;AlertBox
组件新增ok-label
prop;Tabs
组件新增add-label
prop;Transfer
组件新增candidate-title
/selected-title
prop。
- 💡
AlertBox
/ConfirmBox
/PromptBox
均补齐disabled
/loading
prop,与Dialog
组件对齐。
2.0.0-beta.32
- 💡
Overlay
组件内容现在仅会在open
状态下渲染,以提高渲染性能。 - 💡优化了
Table
组件内容溢出时的阴影样式。 - 🐞修正
Carousel
和Lightbox
组件的项目插槽,从default
修正为item
。修正Lightbox
组件的desc
插槽。 - 🐞修正不同尺寸
Cascader
组件的样式问题。 - 🐞修正
SearchBox
、Table
筛选等下拉场景没有高度限制的问题。 - 🐞修正
file
类型Uploader
组件会发起预览网络请求的问题。
2.0.0-beta.31
- 💡新增
Cascader
及CascaderPane
组件。 - 💡
Dialog
组件新增disabled
属性,用于控制确定按钮的启用/禁用。 - 🐞修正
Select
组件在s
/xs
尺寸下多选标签的样式。 - 🐞修正
Lightbox
组件在 Safari 下无法正常显示内容的问题。 - 🐞修正
Uploader
组件在request-mode
为custom
时没有对返回值调用convertResponse
的问题。(#800) - 🐞修正
SearchBox
在显示搜索提示时按下 enter 没有触发search
事件的问题。(#806) - 🐞修正
Carousel
组件尺寸不能通过最外层元素进行调整的问题。(#811)
2.0.0-beta.30
- 💡
Tree
/Transfer
组件新增merge-checked
prop,用于对节点勾选的冗余信息进行合并。支持的值如下:keep-all
:默认值,选中值中包含所有勾选状态的节点。upwards
:尽量向上合并,当某个节点下所有节点均勾选时仅保留该节点本身。downwards
:尽量向下合并,仅保留叶子节点。
- 💡
Tree
组件的被禁用的子节点现在允许切换展开/收起。 - 💡
Tree
组件新增支持对于没有value
的节点,根据name
字段控制展开收起及节点选择(非勾选)状态,用来支持受控切换这两类状态且不出现在已勾选的输出值中(仅作为分组节点使用)。 - 💡
在
Transfer
组件的candidate-head
/candidate-title
/selected-head
/selected-title
插槽中新增了count
插槽属性,分别表示备选数量和已选数量。 - 🐞修复
Tree
组件禁用逻辑,现在被禁用的节点的所有子节点也将被禁用。 - 🐞修复
Transfer
节点在禁用时会受“全选”/“清空”操作影响选择状态的问题。 - 🐞修复
Transfer
在搜索/过滤后全选会选中所有数据而非过滤后数据的问题。 - 🐞修正
Select
组件“未选择”状态的判断逻辑,现在null
/undefined
/[]
均视为未选状态。 - 🐞修正
babel-plugin-veui
在改写import
时没有更新 local binding 导致 JSX 插件误判组件名为字符串的问题。
2.0.0-beta.29
- 💡
Overlay
组件在层叠顺序变化时将触发orderchange
事件。 - 🐞修复
Transfer
组件可以通过批量选择切换禁用项的问题。
2.0.0-beta.28
- 💡
Uploader
组件新增sortable
prop,支持上传文件的拖拽排序。 - 💡
Transfer
组件新增candidate
slot,用于替换整个待选面板的内容。 - 🐞
$confirm
插件在同步回调时不再显示 loading 状态。 - 🐞修复了
Select
组件无法通过键盘 focus 的问题。 - 🐞修复了
RadioButtonGroup
通过方向键切换选项时可能报错的问题。 - 🐞修复了
Link
组件引用了错误的event
对象的问题。 - 🐞修正了
Select
下拉浮层在出现内部滚动时,下层选项组展开定位不符合预期的问题。
2.0.0-beta.27
- ⚠️
Select
与Dropdown
组件的trigger
slot 属性中props
被重命名为attrs
,用来表达需要输出到 DOM 元素上的属性。 - 💡
Column
组件新增filter-options
与filter-multiple
prop,用于开启内置的下拉筛选并设置单选/多选。 - 💡
Column
组件的filter-value
prop 可以支持true
以外的其它属性,在使用内置下拉筛选时对应下拉选项的value
值。当值为null
时,用来指定筛选未激活的状态。 - 💡
Column
组件新增filter-title
prop,用于指定下拉筛选的标题说明。 - 💡
Dropdown
组件的trigger
slot 新增作用域参数expanded
/toggle
,用于获取/切换下拉菜单的展开状态。 - 🐞修复了
less-plugin-dls
版本依赖错误的问题。
2.0.0-beta.26
- ⚠️已移除
Uploader
组件的compat
prop,不再兼容string
类型的value
。 - 💡
Uploader
组件大幅重构,并拆分组件实现。 - 💡
Uploader
组件新增key-field
prop,用于指定value
数组项的唯一键的键名。默认为'key'
。 - 💡
Uploader
组件的value
数组项新增唯一键字段,用于数据回填时的定位到准确的位置。 - 💡
Uploader
组件新增multiple
prop,用于指定value
的数据类型是否为数组。如果multiple
为true
,即使maxCount
为1
,value
仍为数组类型。而当指定了大于1
的max-count
值,即使multiple
为false
也不会生效,value
始终为数组。 - 💡
Uploader
组件新增after-pick
函数 prop,用于新增在选择完文件后执行定的 hook 逻辑。 - 🐞修正了
Table
组件没有正确处理非可排序列的标题交互状态导致可能报错的问题。
2.0.0-beta.25
- 💡
v-drag
指令增加sort
类型,用于容器内元素列表的拖动排序。 - 💡
Progress
组件在进度条模式下支持新增的属性indeterminate
,用于展示不确定进度的情况。 - 🐞修复
Uploader
组件的max-size
校验在 iframe 上传模式下失效的问题。 - 🐞为
file
类型的Uploader
在 iframe 上传模式下提供正常的进度条展示(不确定进度)。
2.0.0-beta.24
- 💡
Column
组件新增filter-value
prop,用来指定表格列的筛选值。当前仅支持在发生过筛选后设置为true
。 - 💡
Column
组件新增filter
slot,用来指定自定义筛选下拉浮层内容。 - 🐞修正
RadioGroup
/CheckboxGroup
组件样式可能错误触发容器发生溢出滚动的问题。 - 🐞
Link
组件的to
prop 现在可以正常使用绝对路径了。 - 🐞修正
Radio
/Checkbox
/Switch
组件在点击时会触发两次click
事件的问题。
2.0.0-beta.23
- ⚠️已移除实验性全局配置项
modal.scrollLockMode
,原因是保留滚动位置时无法保证屏幕不发生瞬间闪烁。 - 🐞修正
Overlay
组件在有开启inline
/local
prop 的父级Overlay
时报错的问题。 - 🐞修正
Uploader
组件在单文件模式下外部修改文件列表不正常的问题。
2.0.0-beta.22
- 🐞修正
Uploader
组件插槽参数中字段缺失status
的问题。 - 🐞修正遗漏
shopping-cart
和film
图标的问题。
2.0.0-beta.21
- 💡
Dialog
触发滚动锁定时,新增实验性全局配置项modal.scrollLockMode
,可选值为safe
/advanced
。详细说明
滚动锁定用来处理在出现全屏遮罩时,滚动行为透传到上层滚动容器的问题。目前的主流方案都使用
overflow: hidden
将上层滚动容器锁定,但当滚动条可见时,切换时会导致容器内部的尺寸发生变化进而发生抖动,故通常方案将在容器上添加一个额外的与滚动条宽度相同的padding-right
来保持内部布局的稳定,也就是safe
模式下采取的行为。但当视口发生滚动时,隐藏其滚动条将使得视口尺寸发生变化,固定定位元素的相对参考位置也会发生变化,会对这部分元素产生滚动条宽度的抖动。如果想避免这一现象,可以全局配置modal.scrollLockMode
为advanced
,将采取另一种锁定策略,将<body>
元素固定定位到撑满视口并overflow: hidden
,从而使视口不会发生内容溢出,同时强制<html>
使用overflow: scroll
,保证视口滚动条依然展示,以达到视口内内容的稳定。但这种模式下同样可能对本身相对<body>
元素底部绝对定位的元素产生副作用。使用时可以测试两种不同的模式后自行选择。 - 🐞修正
Uploader
组件插槽参数中字段缺失的问题。 - 🐞修正
Select
组件在校验错误状态下的样式问题(#758)。
2.0.0-beta.20
- 💡
Table
组件现在在整个表头区域内点击都会触发排序(如果开启了排序功能),内部可获取焦点的元素(被认为可以触发其它交互)除外。 - 🐞修正
Uploader
组件后缀名校验不正确的问题。 - 🐞修正
Tooltip
组件内容可能溢出容器的问题。 - 🐞修正
Link
组件在新标签/窗口打开链接(通过 Ctrl/Shift/⌘ + 鼠标点击或链接包含target="_blank"
时)时,原标签/窗口内容发生跳转的问题。
2.0.0-beta.19
- 🐞更新
dls-icons-vue
依赖,修正图标 treeshake 逻辑没有正常生效的问题。
2.0.0-beta.18
- 🐞修正
veui-theme-dls-icons
图标没有更新的问题。
2.0.0-beta.17
- 💡
Column
组件新增desc
prop,可用来在表头通过Popover
输出额外说明。同时新增对应的desc
插槽,来自定义Popover
组件的内容。 - 💡
Tabs
组件新增eager
prop,将提前渲染未激活的标签面板内容。 - 🐞修正
Uploader
组件在图片/视频上传时底栏操作时间遗漏回调参数的问题。 - 🐞修正
Tabs
组件有时无法滚动到最后的问题。
2.0.0-beta.16
- 🐞修正
Tabs
组件在移除标签项时激活状态切换不正确的问题。
2.0.0-beta.15
- 💡
Lightbox
组件新增options
prop,允许指定视频项播放时的muted
/autoplay
/controls
等配置。 - 💡
Uploader
组件新增preview-options
prop,允许指定预览时调用的Lightbox
的配置。 - 🐞修正
Uploader
组件在图片、视频上传状态下的预览图标。 - 🐞修正
Uploader
组件有时没有正确处理图片预览的问题。 - 🐞修正
Uploader
组件在某一上传项第二次上传/校验失败后无法展示失败理由的问题。 - 🐞修正
Lightbox
未处理初始化时焦点导致打开后初始状态下键盘切换项目失效的问题。 - 🐞修正
Pagination
组件在没有传入to
prop 时,点击跳转到 x 页后没有触发redirect
事件的问题。
2.0.0-beta.14
- 🐞修正
veui
没有正确标注dls-graphics
依赖类型的问题。
2.0.0-beta.13
- 🐞修正
veui-loader
没有正确标注magic-string
依赖类型的问题。
2.0.0-beta.12
- ⚠️
Uploader
组件新增了m
/s
两种ui
属性值,默认尺寸有所增大。 - 💡
新增了
Lightbox
组件。 - 💡
为
Dropdown
/Select
/SearchBox
/DatePicker
/TimePicker
/Autocomplete
组件新增可受控 propexpanded
和toggle
事件,用来控制其下拉浮层的展开/收起。 - 💡
Table
组件新增loading
prop,展示“加载中”状态。 - 💡
Table
/Column
组件新增allowed-orders
prop,支持定制允许的顺序。 - 💡
Select
组件新增trigger
插槽,用于自定义下拉触发区域。 - 💡
Select
组件新增selected
插槽,用于自定义下拉按钮已选项回填内容的展示。与
label
插槽的区别label
插槽仅针对收起状态下的已选项回填内容,而selected
插槽包括了展开状态下的已选项回填内容。 - 💡
Uploader
组件新增了type
prop 的可选值video
/media
,用来支持视频上传的场景。 - 💡
Uploader
组件新增了entries
prop,内置了多入口操作的功能,类型和controls
的返回值相同。 - 💡
为
Loading
组件添加了新的动效。 - 🐞修正
Progress
组件偶尔会由于浏览器编码识别错误显示了错误内容的问题。 - 🐞修正
RadioGroup
组件和CheckboxGroup
组件在内容换行时显示不正确的问题。 - 🐞修正
SearchBox
组件按下 enter 时触发表单提交的问题。 - 🐞修正
Select
组件在清空时将禁用的选项一同清空的问题。
2.0.0-beta.11
- 💡
Uploader
组件的upload
自定义函数 prop 中的第二个参数增加oncancel: Function
字段,可在自定义上传逻辑中主动取消上传。对于“重新上传”场景,取消后将恢复为之前已经上传的文件。 - 🐞修复从外部改变
Uploader
组件的value
prop 导致渲染不正确的问题。 - 🐞修复了
Dialog
组件在关闭时也可能抛出cancel
事件的问题。 - 🐞修复了
NumberInput
组件在右键点击调节按钮时会触发连续调整的问题。
2.0.0-beta.10
- 🐞修复上个版本
Overlay
组件target
更新逻辑引入的导致match-width
在第一次浮层展开时失效的问题。 - 🐞修正
Form
组件没有正确通过Field
的name
prop 进行识别的问题。 - 🐞修正
Accordion
组件无限重渲染的问题。
2.0.0-beta.9
- 💡
DatePicker
组件新增parse
prop 用于指定如何从输入值解析日期对象。 - 💡
DatePicker
组件新增selectstart
/selectprogress
事件,用于对外同步日期范围选择的过程信息。 - 💡
Calendar
/DatePicker
组件的disabeldDate
prop 在日期范围选择过程中,新增第二个参数,表示当前第一个选择日期。 - 💡
Input
/Textarea
组件新增 propget-length
,用于自定义计算已输入字符串长度的逻辑。 - 🐞修复
Schedule
组件快捷选项由于引用被修改导致的数据混乱。 - 🐞修复了
Dialog
/Table
组件在极端条件下触发 Firefox 图层合成 bug 的问题。 - 🐞
Overlay
组件现在不仅在初始化时查找target
对应元素,而是在每次显示时均查找,使得定位逻辑不再依赖对应元素的渲染顺序。 - 🐞修正了
Select
组件中已选的disabled
选项可以被删除的问题。 - 🐞修正了
Select
组件中内联Option
的disabled
prop 不生效的问题。
2.0.0-beta.8
- 💡
Uploader
组件的插槽button-label
现在对图片上传也生效(默认为添加图片图标)。 - 💡去除了所有输入组件、按钮默认的
vertical-align: middle
样式。 - 🐞修正
Transfer
组件无法正常删除父级选项的问题。 - 🐞修正
Input
组件在 Firefox 下无法正常输入的问题。 - 🐞修复
Dialog
内容在极端场景下触发 Firefox 图层合成 bug 的问题。 - 🐞默认为可搜索的
Select
中的Input
关闭了原生autocomplete
功能,以避免原生浮层与Select
下拉浮层重叠的问题。
2.0.0-beta.7
- 🐞修复
Tab
面板内容没有正确响应外部数据变化的问题。 - 🐞修复
CheckboxGroup
选项间距不正确的问题。
2.0.0-beta.6
- ⚠️
veui-theme-dls-icons
中的plus-square-circle
和storage
图标名称分别修正为plus-square
和save
。 - 💡
CheckboxGroup
和CheckButtonGroup
组件的items
prop 项目支持传入exclusive: true
来指定当前项为排它选项,即选择后将取消其它选中项。 - 💡
CheckboxGroup
和CheckButtonGroup
组件新增empty-value
prop,用来指定在用户取消所有复选项时需要重新选中的项目,需要配合新增的exclusive
使用。 - 💡为
ButtonGroup
的ui
增加可选值basic
。 - 🐞修正
Slider
组件值为0
时渲染不正常的问题。
2.0.0-beta.5
- 🐞修复
Select
组件中使用了废弃的Tag
组件接口的问题。 - 🐞修复
Dropdown
组件焦点状态不会在关闭后自动清除的问题。 - 🐞修复
DatePicker
组件浮层位置无法指定的问题。 - 🐞修复图标按钮内图标的边距问题。
- 🐞修复
Table
组件表头图标颜色错误的问题。 - 🐞修复
Menu
组件顶层导航项的字重。
2.0.0-beta.4
- ⚠️
Tag
组件的closable
prop 重命名为removable
。 - ⚠️
Tag
组件的close
事件重命名为remove
。 - 💡
NumberInput
组件增加parse
/format
prop,用来对输入的内容进行格式化输出。 - 💡
Tag
组件增加removed
prop,可以通过外部控制是否被移除。
2.0.0-beta.3
- ⚠️
veui-theme-dls-icons
中,triangle-up
/triangle-right
/triangle-down
/triangle-left
分别重命名为caret-up
/caret-right
/caret-down
/caret-left
。 - 💡所有支持
v-model
/.sync
的 prop 现在均支持完全受控模式。 - 💡
Input
组件增加placeholder
插槽。 - 💡
Select
组件的label
插槽现在可以对multiple
及searchable
的状态生效了。 - 🐞修复
Icon
组件name
为null
时报错的问题。 - 🐞修复
Select
/Slider
/Tabs
/InputGroup
/Collapse
等组件样式细节。 - 🐞修复
Label
组件for
prop 不支持传入组件/元素的问题。
2.0.0-beta.2
- ⚠️移除
veui-theme-one-icons
。 - 💡允许
CheckButtonGroup
配置icons.check
来指定已选项的图标。 - 🐞修复多数组件内的图标按钮样式。
- 🐞修复
DatePicker
与Textarea
的样式问题。
2.0.0-beta.1
- 💡基于
dls-icons-vue
重新实现了veui-theme-dls-icons
。 - 💡
RadioButton
组件的value
prop 支持可受控模式。 - 🐞修复了全局 config 模块可能进入无限递归的问题。
2.0.0-beta.0
- ⚠️
veui-theme-dls
对组件的ui
prop 进行了调整,见下表。组件 删除 新增 Button
- normal
/basic
/aux
/square
Dropdown
- basic
/normal
Field
micro
/tiny
/small
/large
xs
/s
/m
/l
Table
- compact
/loose
/normal
Tabs
- simple
/strong
Tag
borderless
bordered
其中,按钮默认样式变为
normal
,原默认样式现对应为basic
。 - ⚠️
将
ButtonGroup
/RadioGroup
/CheckboxGroup
/RadioButtonGroup
/CheckButtonGroup
组件的每个项目的作用域插槽从default
更名为item
。后续使用时需要用<template #item="...">...</template>
自定义项目内容。 - ⚠️
移除了
GridContainer
组件的flex
prop,默认行容器均使用 flex 布局,不再按条件指定。 - ⚠️
移除了
Input
组件的prepend
/append
插槽,并将before
/after
插槽移入Input
内部。原有的前后组合的场景请使用InputGroup
组件进行组合输入型组件使用。 - ⚠️
NumberInput
组件的prepend
/append
插槽重命名为before
/after
。 - ⚠️
Progress
组件的append
插槽重命名为after
。 - ⚠️
Tree
组件的item-prepend
/item-append
插槽重命名为item-before
/item-after
。 - 💡将整体设计切换到了 D20 版本。
- 💡新增
Nav
组件。 - 💡
Alert
组件的default
/extra
插槽增加参数close
,可用来控制提示的关闭。 - 💡
Alert
组件的extra
插槽增加参数message
。 - 💡
Form
组件新增actions
插槽,用来放置操作按钮。 - 💡
Icon
组件的name
prop 支持直接传入组件定义进行渲染,此时只支持spin
属性。 - 💡
OptionGroup
组件的option-tag
prop 支持传入function
,来根据选项数据动态生成内部Option
/OptionGroup
使用的标签。 - 💡
Tree
组件的item
/item-before
/item-after
/item-label
增加参数expanded
和parents
。 - 💡
Tree
组件新增include-indeterminate
prop,用来指定半选状态的节点是否被计入checked
结果中。 - 🐞修复了
Menu
组件的键盘导航功能。
2.0.0-alpha.21
- 🐞修正
Uploader
组件invalid
事件参数中丢失错误type
字段的问题。
2.0.0-alpha.20
- 💡
Uploader
组件新增invald
事件,在文件校验失败、选择的文件数量超过最大数量限制时触发,回调参数为包含错误信息的数组。 - 💡
Uploader
组件的failure
事件的第一个回调参数文件对象增加字段message
,表示错误信息。
2.0.0-alpha.19
- 🐞修正
NumberInput
在输入值被min
/max
裁切时没有正确同步变更的问题。
2.0.0-alpha.18
- 🐞修正
Uploader
在iframe
模式并且已选文件数量达到max-count
的情况下,没有正确上传文件的问题。 - 🐞修正
Uploader
在iframe
模式下,反复上传文件列表最后一个文件的问题。
2.0.0-alpha.17
- 💡
toast
插件调用后返回值从void
修改为function
类型,调用后将关闭该条提示,可用于自行控制Toast
关闭时机。 - 🐞修正
Alert
组件调用extra
插槽的方式,使得不管单条/多条情况下可以使用同样方式调用。 - 🐞修正
Alert
组件数据变化时当前索引值可能溢出的问题。
2.0.0-alpha.16
- 💡
Checkbox
组件的checked
prop 支持可受控模式。 - 🐞修复了
OptionGroup
组件在使用内联写法时,动态数据源可能导致渲染结果不正确的问题。 - 🐞修复了
OptionGroup
组件的before
/after
slot 在配合v-slot
语法结合动态数据源时在数据变化后消失的问题。
2.0.0-alpha.15
- 💡
Overlay
组件新增了local
prop,值为true
时浮层将不被移到<body>
元素下并且脱离全局浮层顺序管理。 - 🐞修复了
Overlay
组件没有正确销毁的问题。 - 🐞修复了
InputGroup
组件在子组件指定了自定义的class
时样式可能不正确的问题。
2.0.0-alpha.14
- 💡
Calendar
组件的selected
prop 支持可受控模式。 - 💡
Carousel
组件的index
prop 支持可受控模式。 - 💡
TimePicker
组件的value
prop 支持可受控模式。 - 💡
Dropdown
组件新增 slottrigger
,用于自定义下拉触发区域。 - 💡
Dropdown
组件默认 slot 新增参数close
函数,用来在自定义下拉内容区时需要关闭下拉浮层时调用。 - 💡
Overlay
组件新增local
prop,用来指定不将浮层移动到document.body
下,脱离全局浮层管理。 - 🐞修复了
Popover
组件的ui
prop 不生效的问题。 - 🐞
- 🐞修正了
Tabs
组件在 Safari 下的样式问题。 - 🐞
Menu
组件使用路由的path
来计算当前激活的项目,而不是fullPath
。
2.0.0-alpha.13
- 💡
Autocomplete
组件新增了option-label
插槽。 - 💡
OptionGroup
组件新增before
/after
插槽,用于在popup
模式下在新开浮层上下插入自定义内容。 - 🐞修复了
Tab
组件的label
等 prop 更新时视图没有同步更新的问题。 - 🐞修复了
Menu
组件数据源在 SSR 环境下无限循环的问题。 - 🐞修复了
Anchor
组件在 SSR 环境下访问 DOM 的问题。
2.0.0-alpha.12
- 🐞
veui
现在在babel-plugin-veui
的peerDependencies
中,以免多版本共存时babel-plugin-veui
无法找到正确的veui
版本。 - 🐞修复了
Menu
组件非受控模式下第一次没有正确同步当前路由状态的问题。 - 🐞
- 🐞现在
ButtonGroup
组件只有在按钮项value
为字符串时抛出同名事件,避免在非字符串类型时报错。 - 🐞去除了多选
Select
组件已选项默认滚动入可视区域的行为(因为可能有多个已选项)。 - 🐞修正了开启搜索功能的
Dropdown
组件搜索栏和选项区域同时滚动的问题,搜索栏现在固定在下拉菜单顶端。
2.0.0-alpha.11
- ⚠️
移除了
babel-preset-veui
。 - ⚠️
移除了
veui-theme-one
。 - ⚠️
移除了
Tabs
组件的index
prop,现在控制激活标签页只能使用active
prop,并支持可受控模式。使用指南
使用
active
prop 与change
事件完全外部控制激活状态<veui-tabs :active="active" @change="tab => active = tab.name"> <veui-tab label="A" name="a">Content A</veui-tab> <veui-tab label="B" name="b">Content B</veui-tab> <veui-tab label="C" name="c">Content C</veui-tab> </veui-tabs>
使用
active.sync
双向同步激活状态<veui-tabs :active.sync="active"> <veui-tab label="A" name="a">Content A</veui-tab> <veui-tab label="B" name="b">Content B</veui-tab> <veui-tab label="C" name="c">Content C</veui-tab> </veui-tabs>
激活状态完全由组件内部控制
<veui-tabs> <veui-tab label="A">Content A</veui-tab> <veui-tab label="B">Content B</veui-tab> <veui-tab label="C">Content C</veui-tab> </veui-tabs>
- ⚠️
Tabs
组件的tabs-extra
slot 更名为extra
,且仅包括提示区域的内容,不包括添加按钮。 - ⚠️
移除了
Tabs
组件的tabs-extra-label
与tabs-extra-tip
slot。 - ⚠️
Tabs
组件的tab-item
scoped slot 现在包含整个按钮/链接,方便替换为自定义实现。 - ⚠️
移除了
Tabs
组件的tab-item-extra
scoped slot,removable
的Tab
组件始终显示移除按钮。 - ⚠️
Tabs
组件在路由模式下,不再自动输出<router-view>
组件,需要通过Tab
的default
slot 或Tabs
新增的panel
slot 中进行输出。使用指南
(嵌套)路由模式
在之前的版本,如果
Tab
组件的default
slot 未传入任何内容,路由模式下 VEUI 会自动在标签内容容器内渲染<router-view>
。这导致在不使用嵌套路由时或是希望灵活控制<router-view>
位置时产生额外的问题。所以在这个版本中移除了这个逻辑,用户可以使用Tabs
的panel
slot 来统一在标签内容容器中输出<router-view>
,也可以在某些Tab
的default
slot 中输出<router-view>
及额外内容来覆盖全局的panel
slot,甚至可以将<router-view>
输出到其它任意合适的位置。<veui-tabs> <veui-tab label="A" to="content/a"/> <veui-tab label="B" to="content/b"/> <veui-tab label="C" to="content/c"> <h3>Content C</h3> <router-view/> </veui-tab> <template #panel> <router-view/> </template> </veui-tabs>
- 💡
新增了
Tabs
组件的tab-label
scoped slot,用于仅自定义标签项内容。 - 💡
新增
Tabs
组件的panel
slot,用于指定标签下方面板内的自定义内容。 - 💡
新增
Tabs
组件的change
事件,回调参数为tab
对像,包含name
、label
、to
、status
等字段。 - 💡
新增
Tab
组件的item
slot,用于自定义标签内容,与Tabs
组件的tab-item
对应,优先级更高。 - 💡
新增
Tab
组件的label
slot,用于自定义标签内容,与Tabs
组件的tab-label
对应,优先级更高。使用指南
自定义标签项内容
可以使用
Tabs
的tab-item
scoped slot 来自定义所有标签项的内容,也可以使用Tab
的item
scoped slot 来自定义单个标签项内容(单个内容将覆盖整体的内容)。<veui-tabs> <veui-tab label="A"> Content A <template #item="tab"> <button type="button" class="foo-btn" :disabled="tab.disabled" v-bind="tab.attrs" @click="tab.activate" > {{ `${tab.label} ${tab.active ? '✅' : '' }` }} </button> </template> </veui-tab> <veui-tab label="B">Content B</veui-tab> <veui-tab label="C">Content C</veui-tab> </veui-tabs>
如果只想定义文本区域的内容(不需重写点击激活等逻辑),请使用
Tabs
的tab-label
或Tab
的label
scoped slot,用法类似。<veui-tabs> <veui-tab label="A"> Content A <template #label="tab">Content A {{ `${tab.active ? '✅' : '' }` }}</template> </veui-tab> <veui-tab label="B">Content B</veui-tab> <veui-tab label="C">Content C</veui-tab> </veui-tabs>
- 🐞修复了
Transfer
组件删除已选项时报错的问题。 - 🐞修复了
Transfer
组件和Tree
组件在被禁用状态下依然可以添加已选项的问题。 - 🐞修复了悬浮触发的
Tooltip
组件可能被错误关闭的问题。 - 🐞修复了在局部输出全局样式时没有正确处理
Anchor
浮层的问题。 - 🐞修复了
Overlay
组件没有响应inline
prop 变化的问题。 - 🐞修复了
NumberInput
组件在strong
模式下最大最小值没有正确工作的问题。
2.0.0-alpha.10
- ⚠️
使用
Uploader
的upload
prop 自定义上传过程时,参数中的回调函数onload
/onprogress
/onerror
中第一个参数file
被移除,原来提供上传结果、进度或错误信息的第二个参数成为第一个参数。迁移指南
原回调方法
function upload (file, { onload, onprogress, onerror }) { const xhr = new XMLHttpRequest() xhr.upload.onprogress = e => onprogress(file, e) xhr.onload = () => { onload(file, JSON.parse(xhr.responseText)) } xhr.onerror = e => onerror(file, e) // ……实际上传操作…… }
新回调方法
function upload (file, { onload, onprogress, onerror }) { const xhr = new XMLHttpRequest() xhr.upload.onprogress = e => onprogress(e) xhr.onload = () => { onload(JSON.parse(xhr.responseText)) } xhr.onerror = e => onerror(e) // ……实际上传操作…… }
- 💡
Uploader
使用upload
prop 自定义上传过程时,如果返回一个函数,该函数将在用户操作取消或上传组件销毁时被调用,用来中断自定义上传过程。 - 💡
Uploader
没有通过文件类型校验、文件大小校验和自定义校验的文件现在会以上传失败的状态出现在文件列表中。 - 💡
Uploader
新增 proppicker-position
,支持图片上传模式下控制上传按钮始终保持在列表最前面还是最后面。 - 💡
Uploader
新增可供外部调用的方法addFiles
,支持通过函数直接添加并上传文件。 - 💡
Menu
组件新增了icon
/before
/after
三个插槽。 - 🐞修复了使用
tabs-extra
插槽时由于插槽位置错误可能引起报错的问题。 - 🐞修正了
Menu
组件图标尺寸错误的问题。 - 🐞调整了部分输入组件的样式,解决了在为组件最外层元素设置宽度后内部组件没有匹配尺寸的问题。
- 🐞修正了
Table
组件在初始数据为空时(比如异步加载),滚动事件监听器没有正常初始化导致内容加载后,表头与内容横向滚动不同步的问题。
2.0.0-alpha.9
- 🐞修复了仍有部分局部输出全局样式对浮层不生效的问题。😭
- 🐞修正了入口文件导出没有与最新组件列表同步的问题。
- 🐞修正了
Schedule
组件 tooltip 提示可能失效的问题。
2.0.0-alpha.8
- 💡
DatePicker
组件的selected
prop 支持可受控模式。 - 🐞修复了局部输出全局样式对浮层不生效的问题。
2.0.0-alpha.7
- ⚠️移除了
Button
组件的loading
插槽。 - 💡
veui-theme-dls
新增了@veui-root-element
变量,支持局部输出全局样式的功能。使用指南
可以配置全局 Less 变量
@veui-root-element
为目标区域的元素名(这里必须是自定义元素),此时所有全局样式规则会自动调整到只针对该类元素内部生效,比如:@veui-root-element: v-app;
此时输出的全局样式都会带上
v-app
前缀,如:v-app button, v-app [type="button"], v-app [type="reset"], v-app [type="submit"] { -webkit-appearance: button; }
为什么要使用自定义元素?
如果允许自定义前缀使用 ID 或类选择器、或者其它复合选择器,将会使全局样式的特异性过高,超过 VEUI 组件样式的特异性(比如
#app button
>.veui-button
),导致组件样式被全局 normalize 之类的样式覆盖,产生不符合预期的结果。而由于组件至少有一级类选择器,所以在这里我们只要合理使用自定义元素,就可以有效避免样式覆盖的问题。 - 🐞修复了
Table
组件初始时表头和内容列有时错位的问题。 - 🐞修正了
Menu
引入了错误的尖角图标的问题。
2.0.0-alpha.6
- ⚠️删除了
Drawer
组件的backdrop-closable
prop,新增outside-closable
prop 来控制点击组件外区域时是否关闭。 - ⚠️移除了
Sorter
组件,仅在Table
内部使用。 - ⚠️
Table
组件带边框的样式修改为依赖新增 propbordered
,而非通过ui="bordered"
指定,并且当存在单元格合并(包括表格内容合并和嵌套表头时)必须输出带边框样式。 - 💡新增
Menu
组件。 - 💡指令式调用
Toast
组件时,支持传入自定义的渲染函数以输出非纯文本内容。 - 💡
Table
组件新增列分组(输出嵌套表头)功能支持。 - 💡
Table
组件新增固定列功能支持。 - 💡
Dialog
组件在modal
模式下,新增滚动锁定功能支持。 - 🐞修复了
Toast
组件的进入动画。 - 🐞修复了
Input
组件在非 WebKit 浏览器下报错的问题。 - 🐞修复了
SearchBox
组件的role
属性输出。
2.0.0-alpha.5
- 🐞修复了
Drawer
组件没有正确支持overlay-class
prop 的问题。 - 🐞修正了
DatePicker
组件没有根据week-start
prop 处理快捷选项的问题。
2.0.0-alpha.4
- ⚠️
Uploader
组件调整为适配 DLS 实现,新增了插槽upload
支持图片模式下自定义上传区域,移除type-invald
/size-invalid
/count-overflow
/extra-operation
这四个插槽,移除 propprogress
,移除ui
选项horizontal
。 - ⚠️用来接入多个版本 VEUI 的
babel-plugin-veui
与veui-loader
的name
选项重命名为alias
。 - ⚠️
Tree
组件的item-click
prop 被移除,现在点击内容区域的行为修改为:selectable
时切换选中,否则checkable
时切换勾选,否则在有子节点时切换展开收起。 - 💡
Uploader
组件新增了validator
prop,支持自定义的异步校验功能。 - 💡
Uploader
组件新增了controls
prop,支持在图片模式下自定义可对文件进行的操作。 - 💡
veui-loader
和babel-plugin-veui
的name
选项改名为alias
。 - 💡
Tooltip
与Popover
新增了autofocus
prop,允许在interactive
不为false
时在打开时自动聚焦内容。 - 💡
Input
与Textarea
新增了maxlength
prop,用来指定最长的字符数限制。 - 💡
Input
与Textarea
新增了strict
prop,用来指定是否允许在字符数到达maxlength
限制时继续输入。 - 💡
新增
babel-plugin-veui/rewrite
,可以将指定路径下对veui
的依赖根据alias
参数重写。例子
对于一个典型的同时引入两个版本 VEUI 的项目,
babel.config.js
内容建议如下:module.exports = { presets: ["@vue/app"], plugins: ["veui", ["veui", { name: "veui-next" }, "veui-next"], "lodash"], overrides: [ { test: [/veui-theme-dls/], plugins: [["babel-plugin-veui/lib/rewrite", { alias: "veui-next" }]] } ] };
- 🐞修正了
veui-loader
读取到非用户依赖版本的veui
版本的问题。 - 🐞修正了
veui-loader
会对用户依赖版本veui
生效而 非仅仅对指定别名的包生效的问题。 - 🐞修复
DatePicker
组件 shortcut 样式不正确的问题。 - 🐞修复
Uploader
组件在有文件未上传完成的情况下,上传新文件会重复上传未上传完的文件的问题。 - 🐞修复
Option
聚焦时可能错误引发滚动的问题。 - 🐞修复了部分样式未按类名前缀变量进行输出的问题。
- 🐞修复了对
date-fns
模块引用了错误路径的问题。
2.0.0-alpha.3
- ⚠️
DatePicker
组件不再支持shortcuts-position
和panel
prop,并删除对应的全局配置项datepicker.shortcutsPosition
。 - 💡为
veui-loader
与babel-plugin-veui
增加了自定义veui
别名的功能,以允许项目同时使用多个版本的 VEUI,帮助顺利从veui@1
向veui@2
进行切换。详细用法见 #596。 - 💡新增
InputGroup
组件。 - 💡为
Label
组件增加了for
prop,用于显式指定被激活的输入组件。 - 💡为
Input
/NumberInput
/TimePicker
/Textarea
/Autocomplete
组件增加invalid
prop,使其处于错误状态。 - 💡为
Autocomplete
/Dropdown
/Input
/SearchBox
/TimePicker
组件新增clear
事件。(#591) - 💡为
Dialog
/Drawer
/Embedded
/PromptBox
新增loading
prop,默认使确认按钮处于加载状态。 - 💡为
PromptBox
增加invalid
prop,会使内部的输入框处于错误状态。 - 💡现在
confirm
/prompt
的 manager 与插件中,ok
/cancel
选项函数返回false
或返回的Promise
resolvefalse
时,将阻止对话框关闭。 - 💡现在
prompt
的 manager 与插件中,ok
/cancel
选项函数会接收到输入框当前值作为第一个参数。(#593) - 💡
DatePicker
/Calendar
组件样式更新到 DLS 版本。 - 💡
DatePicker
组件新增全局配置项datepicker.monthRangePlaceholder
与datepicker.yearRangePlaceholder
。 - 💡
Calendar
组件viewchange
事件参数中新增该事件触发面板的index
数据。 - 💡
DatePicker
/Calendar
组件支持月份/年份的范围选择。 - 💡
Calendar
组件支持月份/年份的多选。 - 💡可搜索的
Select
组件现在在输入过程中会对外触发input
事件并携带输入内容。 - 💡
Select
新增作用域插槽tag
,用来自定义多选情况下已选项的内容。 - 🐞修复
Slider
组件分段模式下两端缺少 marker 的问题。 - 🐞修复
Transfer
组件中搜索功能没有正确随组件设置禁用的问题。 - 🐞修复
Column
的head
/foot
插槽数据更新失效的问题。 - 🐞优化了
Select
/Dropdown
组件的键盘操作。 - 🐞优化了
NumberInput
组件的显示。 - 🐞修复
Textarea
的placeholder
没有生效的问题。 - 🐞修复
SearchBox
在未触发下拉提示时按下 enter 也不触发submit
事件的问题。
2.0.0-alpha.2
- ⚠️
Searchbox
组件更名为SearchBox
。同时组件内部所有的class
中的searchbox
亦被更名为search-box
。如果在样式代码中进行过定制,请进行全局替换。 - 💡
Switch
组件增加了on-label
和off-label
prop 以及content
作用域插槽,支持在内部输出提示文字或其它内容。 - 💡重写了 overlay manager,修复了输出的
z-index
无限制上涨的问题。 - 💡新增了全局配置项
managers.overlay
,可以注入其它实例接管浮层管理逻辑。 - 💡调整了耦合组件的关联机制,现在
Column
、Tab
等组件可以被封装在其它组件内,填充入Table
、Tabs
等的插槽中使用。 - 💡
Dialog
新增了footless
prop,用于不输出默认的底部操作栏。 - 🐞修复
Tabs
组件有时为激活 tab 的操作设置了错误参数的问题。 - 🐞修复
Schedule
组件合并选择范围时可能出现的问题。 - 🐞修正了大量样式细节。
2.0.0-alpha.1
- 💡补充了
veui-theme-dls-icons
中缺失的图标。
2.0.0-alpha.0
- ⚠️用 Popper.js 替代了 Tether。
Overlay
组件的options
prop(以及多个组件的overlay-options
prop)现在都对应于 Popper.js 的options
参数。Overlay
的position
prop 在之前的版本就已经兼容了 Popper.js 的语法,所以如果之前就以 Popper.js 风格进行描述,则无需调整。见 #574。 - ⚠️
Input
组件的before
/after
slot 重命名为prepend
/append
,新的before
/after
位置在输入框外部。并且新增了before-label
/after-label
两个 slot。见 #502。 - ⚠️
- ⚠️移除
Alert
组件的close-label
属性。 - ⚠️
Pagination
组件根据新的设计不再支持总数显示。 - ⚠️移除已废弃的
Pager
组件,请使用Pagination
组件代替。 - ⚠️移除
Progress
组件已废弃的precision
prop,请使用decimal-place
prop 代替。 - ⚠️移除
Progress
组件已废弃的state
prop,请使用status
prop 代替。 - ⚠️移除
Progress
组件已废弃的auto-succeed
prop,请使用autosucceed
prop 代替。 - ⚠️移除
Schedule
组件已废弃的shortcuts-display
值expand
/collapse
,请使用inline
/popup
代替。 - ⚠️移除
OptionGroup
组件已废弃的position
值popout
,请使用popup
代替。 - ⚠️移除
Tooltip
组件已废弃的custom
prop,请使用trigger: 'custom'
代替。 - ⚠️移除
Tree
组件已废弃的expands
prop,请使用expanded
代替。 - ⚠️移除
Uploader
组件已废弃的auto-upload
prop,请使用autoupload
prop 代替。 - ⚠️
Uploader
组件响应数据中的status
及reason
字段被移除,请使用success
及message
代替。见1.0.0-alpha.19 的迁移指南。 - 💡支持在编译时指定组件 class 前缀。具体自定义方式见 #573。
- 💡新增了
veui-theme-dls
主题并将大部分组件调整为适配 DLS 实现。 - 💡新增了
Loading
组件。 - 💡新增了
Collapse
组件。 - 💡新增了
Accordion
组件。 - 💡新增了
Badge
组件。 - 💡新增了
TimePicker
组件。 - 💡新增了
Drawer
组件。 - 💡新增了
Embedded
组件。 - 💡新增了
Anchor
组件。 - 💡为
Overlay
/Dialog
组件新增了inline
prop,允许内联在内容中进行渲染。 - 💡为
Overlay
组件新增了match-width
prop,允许对于相对指定元素定位时,以目标元素宽度为浮层最小宽度。 - 💡为
Progress
组件新增了append
slot。 - 💡为
Alert
组件新增了title
、extra
slot。 - 🐞修复
Select
组件中Option
没有传入label
时对应 slot 不渲染的问题。 - 🐞修复
Select
内联写法时部分 slot 不生效的问题。 - 🐞修复
Select
内联写法时trigger
prop 不生效的问题。
1.0.0-alpha.32
- ⚠️
Select
/Input
/Checkbox
/Radio
/Switch
组件现在不会在外部数据发生变化后触发更新时抛出input
或change
事件。当需要始终同步数据时,则需使用v-model
进行绑定。 - 💡
outside
指令判断元素位置时增加了 Portal 逻辑的支持,如果 Portal 入口在指定范围内,则被其移动的元素也将视为在指定范围内。 - 🐞修复
Uploader
组件在iframe
模式下,提交过程中被销毁时没有正确移除<iframe>
和<form>
的情况。
1.0.0-alpha.31
- ⚠️修正
Uploader
组件中file
/uploading
/failure
三个作用域插槽参数。由{ file: { name, src, status, index } }
修正为{ name, src, status, index }
。 - 💡
drag
指令现在仅在鼠标左键按下时才触发拖动。 - 💡
drag
指令的dragend
回调参数中新增cancel
方法,可用来撤消最近一次拖动(恢复到dragstart
之前的位置)。
1.0.0-alpha.30
- 💡
ButtonGroup
的点击事件增加最后一个参数为原生事件对象。 - 💡增加
Autocomplete
组件。 - 💡增加
Drawer
组件(缺样式)。 - 💡增加
Tag
组件(缺样式)。 - 🐞
Dropdown
组件现在可以正确支持不同尺寸。 - 🐞修复
Input
组件占位符有时没有正确清除的问题。 - 🐞修复
NumberInput
有时无法正确输入的问题。 - 🐞修复
Searchbox
组件在readonly
状态下会触发提示的问题。
1.0.0-alpha.29
- 🐞修正
RegionPicker
组件浮层不能正常关闭的问题。 - 🐞修正
Tooltip
组件的v-outside
参数类型问题导致有时无非正常关闭。 - 🐞修正
Schedule
组件没有正确处理readonly
、disabled
和disabled-hour
prop 的问题。 - 🐞修正
Schedule
组件的label
插槽from
参数错误的问题。
1.0.0-alpha.28
- 🐞修正 npm 包没有正确发布的问题。
1.0.0-alpha.27
- 🐞修正
babel-plugin-veui
可能阻断后续插件执行的问题。(#469)
1.0.0-alpha.26
- 🐞修正
Tree
组件item-label
slot 没有正常渲染的问题。 - 🐞修正
longpress
指令repeat
参数的默认值为false
。 - 🐞修正
resize
指令没有正确处理leading
参数的问题。 - 🐞修正
outside
指令没有准确判断参数是否变更的问题。 - 🐞修正
Breadcrumb
组件初始值为null
时报错的问题。
1.0.0-alpha.25
- ⚠️
Checkbox
的indeterminate
prop 不再支持.sync
,始终由外部控制。 - ⚠️
Switch
的change
事件将在数据更新完毕后触发。 - 💡支持多个
Checkbox
在v-model
绑定到同一个数组时自动组成复选框组。 - 💡
Textarea
新增select-on-focus
prop。 - 🐞
修复了部分原生
<button>
未设置type="button"
的问题。 - 🐞
修正了
Checkbox
、Radio
与Switch
组件中原生<input>
状态没有正确同步的问题,以触发 CSS 中正确的伪类样式。 - 🐞
修正了带下拉浮层的组件的 ARIA 标注,使浮层拥有正确的从属关系。
- 🐞
修正了组合组件时可能发生未正确继承
ui
prop 的问题。 - 🐞
修复了
Schedule
组件在拖动选取多日时段时,selected
中可能共享同一数组实例的问题。 - 🐞
优化了
Input
、NumberInput
与Textarea
的属性透传机制,现在未被识别为 prop 的属性都会正确输出到原生<input>
或<textarea>
元素上。 - 🐞
优化了原生事件透传机制,原生元素触发的事件将可以被外层组件直接透传。涉及的组件为
Button
、Checkbox
、Radio
、Switch
、Input
。NumberInput
、Textarea
。相关事件包括:
auxclick
、click
、contextmenu
、dblclick
、mousedown
、mouseenter
、mouseleave
、mousemove
、mouseover
、mouseout
、mouseup
、select
、wheel
、keydown
、keypress
、keyup
、focus
、blur
、focusin
、focusout
。
1.0.0-alpha.24
- 💡为
Calendar
及DatePicker
组件增加 proptype
,以支持月份/年份选择。 - 💡为
Transfer
组件实现了focus
方法。 - 💡优化了
Tree
的键盘导航及 ARIA 标注。 - 💡优化了 Chrome 下自动填充时的样式。
- 🐞修正
Transfer
组件已选项不能从外部正确更新的问题。 - 🐞修正
Table
中colspan
在动态显示列时计算不正确的问题。 - 🐞修正
Uploader
提示样式可能被截断的问题。
1.0.0-alpha.23
- ⚠️
Tree
组件的expands
prop 更名为expanded
。expands
被废弃,将在1.0.0
移除。 - ⚠️
Radio
和Checkbox
的change
事件将在数据更新完毕后触发。 - 💡为
Overlay
组件增加 propposition
。 - 💡为
FilterPanel
组件增加 proptitle
。 - 💡
Tree
组件的item
及item-label
slot 作用域参数现在包含每个节点数据项的所有字段。 - 💡
Transfer
组件的candidate-item
、selected-item
、candidate-item-label
及selected-item-label
slot 作用域参数现在包含每个节点数据项的所有字段。 - 🐞修正
Overlay
组件 prop 类型导致 SSR 报错的问题。 - 🐞修正
Searchbox
组件suggestions
prop 类型为Array<string>
时,replace-on-select
设置无效的问题。 - 🐞修正
veui-theme-one-icons
中图标的fill
&stroke
。 - 🐞修正
Transter
组件的selected-item-label
插槽在selected-show-mode
为'flat'
时无效的问题。 - 🐞修正
Transfer
组件更新datasource
时候选项没有正确更新的问题。 - 🐞修正
Schedule
时段合并逻辑在从0:00
开始时失效的问题。
1.0.0-alpha.22
- ⚠️
Progress
组件的auto-succeed
prop 更名为autosucceed
。auto-succeed
被废弃,将在1.0.0
移除。 - 💡
Pagination
组件支持不传入to
prop,完全使用事件进行交互。 - 💡为
Dialog
组件的所有插槽传入作用域参数close
函数。 - 🐞修复了
Button
中target
等props
的同步问题。 - 🐞修正了
PromptBox
回车确认时事件重复触发的问题。 - 🐞修正了
CheckboxGroup
和CheckButtonGroup
组件初始值为null
时报错的问题。 - 🐞修正了
Calendar
和Schedule
组件范围选择初始值为null
时计算错误的问题。 - 🐞修正了
AlerBox
和Tabs
组件存在硬编码文本的问题。 - 🐞修正了
Select
和OptionGroup
在使用内联组件时,作用域插槽没有生效的问题。 - 🐞修正了
Textarea
在显示行号且不自动扩展时,行号滚动不同步的问题。 - 🐞修正了
Tooltip
组件的在target
/trigger
改变时重新绑定事件的逻辑。
1.0.0-alpha.21
- 🐞修复了
NumberInput
中value
和localValue
的同步问题。 - 🐞修正了
Overlay
组件target
prop 类型声明在 SSR 下报错的问题。 - 🐞修正了内部滚动模式的
Table
组件在系统有滚动条时的表头宽度。 - 🐞修正了用
row
prop 指定Textarea
组件高度时在 IE 下无视行高的问题。 - 🐞修正了
Alert
组件图标在 IE 下没有垂直居中的问题。 - 🐞修正了
Slider
组件在有多按钮时在 IE 下不能正常工作的问题。 - 🐞修正了
Tree
、DatePicker
有时在鼠标操作时误显示聚焦样式的问题。 - 🐞修复了
Tabs
中使用offsetWidth
的精度问题导致active
和index
切换失效的问题。
1.0.0-alpha.20
- 💡
Searchbox
新增了suggestions-before
与suggestions-after
两个插槽。 - 💡
Searchbox
提示层只在选择选项后关闭,如果点击自定义插槽而非默认的选择选项时,提示层不再自动关闭。 - 💡在控制台警告中增加了组件层级信息。
- 💡为
Tree
/FilterPanel
/Transfer
组件的增加了键盘交互。 - 💡为所有支持聚焦或激活操作的组件添加了
focus
或activate
方法。 - 💡对于使用路由模式的
Tabs
及Tab
组件,新增函数 propmatches(current, to)
来允许指定自定义的激活状态判断,不再需要手动在Tabs
组件中控制index
。Tab
组件的matches
逻辑优先于上层Tabs
组件中的matches
。 - 💡增加了全局配置项
tabs.matches
来允许全局自定义Tab
组件matches
prop 的默认值。 - 💡使用了更为显著的聚焦样式。
- 🐞修复了
Overlay
组件的target
prop 类型。 - 🐞修正了主模块没有导出
OptionGroup
组件的问题。 - 🐞提前判断是否需要修正复选框
indeterminate
兼容性,而非在用到的组件mounted
以后才判断,避免模拟的点击触发了已经定义的事件监听器。 - 🐞去除了多余的类型判断,修复
min
/max
规则失效的问题。
1.0.0-alpha.19
- ⚠️
Uploader
组件上传请求响应经过convert-response
函数转换后,需要提供给组件执行后续操作的数据结构有所调整。目前仍然兼容老版本格式,但将在1.0.0
移除。迁移指南
原数据格式
成功:
{ "status": "success", "name": "...", "src": "..." }
失败:
{ "status": "failure", "reason": "..." }
新数据格式
成功:
{ "success": true, "name": "...", "src": "..." }
失败:
{ "success": false, "message": "..." }
- ⚠️
移除了
managers/config
的merge
与mergeDefaults
方法,现在对于Object
类型的配置项需要提供完整值。 - ⚠️
Breadcrumb
组件的default
作用域插槽重命名为item
,因为 Vue 实际的 fallback 逻辑,所以避免使用同名的 slot 和 scoped slot。 - 💡新增了 I18N 支持,外置了所有文案,并添加了组件级别对应的
zh-Hans
与en-US
locale。 - 💡
veui-loader
新增支持通过locale
选项配置要自动引入的语言包。 - 💡
veui-loader
新增支持通过global
选项配置全局引入的模块。 - 💡
managers/config
模块的配置现在为响应式数据,支持在组件渲染后进行全局修改。 - 💡
Field
组件对应的数据字段名现在默认优先取name
prop,且可以被field
prop 覆盖。 - 💡
rule
模板占位符由${...}
变更为{...}
,以方便在模板字符串中进行书写。老语法仍然保持兼容。 - 💡
Calendar
、DatePicker
与Schedule
的范围合并逻辑现在默认为“智能”模式,当用户从已选项开始选择范围时,将从整体已选范围中去除当前选区;当从未选项开始选择时,则将当前选区并入整体。 - 💡
Table
组件新增 propscroll
,用来限定内容滚动区域的最大高度,设置时会使得表格的头/脚固定。 - 💡
Table
组件新增 propexpandable
与expanded
,用来支持行展开,且新增作用域插槽sub-row
。 - 💡
Column
组件新增作用域插槽sub-row
。 - 💡
Link
组件新增 proprel
、target
,当target
为_blank
时自动为rel
增加noopener
值,以增强安全性。 - 💡将所有图标替换为了新版「标局」图标并拆分为新的
veui-theme-one-icons
包。原veui-theme-one/icons
下的图标依然保留。 - 🐞修正了
GridContainer
的左右边距计算。 - 🐞修正了
Link
组件在默认模式下disabled
未起效的问题。 - 🐞修正了
Uploader
组件remove
事件的回调参数file
提供了错误的文件的问题。 - 🐞修正了未注册的
ui
值不能直接输出的问题(#378)。
1.0.0-alpha.18
- ⚠️对 Vue-Awesome 的依赖升级到
3.1.2
。如果之前有在项目中直接使用vue-awesome@2
的,需要升级到最新版,否则无法混用 VEUI 与 VueAwesome 的图标。 - ⚠️
Tooltip
组件的custom
prop 被废弃,将在1.0.0
移除。替代方式为:将trigger
prop 指定为custom
来使用自定义逻辑控制打开及关闭。 - ⚠️
Pagination
组件内部所有的class
中的pager
被更名为pagination
。如果在样式代码中进行过定制,请进行全局替换。 - ⚠️
Uploader
组件的progress
prop 的'number'
取值被替换为'percent'
及'detail'
,分别表示显示百分比及显示进度详情。进度详情将以`${loaded}KB/${total}KB`
的形式输出。 - ⚠️
Uploader
组件的 propconvert-response
函数必须返回转换后的数据对象。 - 💡增加主题包为组件部件指定
ui
的功能,同时组件现在将自动继承父组件中可继承的ui
字段,并更新了veui-theme-one
中所有相应的部分。 - 💡
Breadcrumb
组件的 scoped slotdefault
新增参数index
。 - 💡
Button
组件增加ui
选项dark
。 - 💡
rule
的validate
方法现在可以传入额外的上下文的数据,比如在Field
验证时传入整个Form
的data
。 - 🐞修正
GridContainer
没有正确发布的问题。 - 🐞修复
Slider
组件在有step
时的选择逻辑,由向下选取点改为就近取点,且修正了min
值非0
时的逻辑。 - 🐞修复
Uploader
组件无法正确获取全局配置的uploader.convertResponse
函数的问题。
1.0.0-alpha.17
- ⚠️
Dialog
组件预设ui
值top
更名为high
。 - ⚠️
Button
组件再loading
状态下将保留 slot 内容,不再强行设置为'加载中……'
。 - ⚠️删除了
$confirm
、$prompt
插件本来就无效的带状态唤起接口。 - 💡增加
longpress
指令。 - 💡
Dropdown
组件增加了trigger
prop,来指定何时展开下拉框。 - 💡
Dropdown
组件增加了split
prop,来允许拆分指令按钮与下拉切换按钮。 - 💡
Button
组件增加了mouseenter
/mouseleave
事件。 - 💡
NumberInput
组件支持长按调整值。 - 💡增加了
GridContainer
/GridRow
/GridColumn
组件。 - 💡
Progress
组件增加了预设ui
值fluid
,自适应容器宽度。 - 💡
Dialog
组件增加了预设ui
值small
/large
/auto
,用于指定预设宽度。 - 💡为
Overlay
/Dialog
/AlertBox
/ConfirmBox
/PromptBox
组件增加了afterclose
事件。 - 💡调整了
alert
/confirm
/prompt
/toast
插件的接口,现在$alert
/$confirm
/$prompt
/$toast
均可直接作为函数调用。 - 🐞修复
Tabs
组件移除标签时可能产生的问题。 - 🐞修正
ConfirmBox
没有正确触发事件的问题。
1.0.0-alpha.16
- 💡增加了
babel-preset-veui
,简化了引入 VEUI 一起进行转译所需的步骤。 - 💡引入
date-fns
替换了对moment
的依赖。 - 🐞修复了
DatePicker
组件panel
prop 默认值错误的问题。 - 🐞修正
Alert
组件样式。 - 🐞修正
Breadcrumb
组件样式。
1.0.0-alpha.15
- ⚠️
因为
less@2
依赖的包存在安全漏洞,故此次升级将对less
的依赖升级到了^3.8.0
,对less-plugin-est
的依赖升级到了^3.0.0
。迁移指南
- 更新
less
与less-plugin-est
的版本; - 如果使用
vue-cli
的webpack
模板初始化项目,请按如下方式修改build/utils.js
文件:
- less: generateLoaders('less'), + less: generateLoaders('less', { javascriptEnabled: true }),
- 更新
- ⚠️
Dialog
组件现在默认会在点击默认的按钮及按下 esc 键时关闭并通过.sync
修饰符同步外部数据。并且新增before-close
函数 prop 来处理需要阻止对话框关闭的情况。增加default
/foot
slot 的 slot 参数close
,用来在重写组件 slot 时调用关闭逻辑。迁移指南
对于重写
foot
slot 处理关闭逻辑的使用方式,不会受新逻辑影响。对于监听
ok
/cancel
事件并直接关闭对话框时,亦不受此改动影响。当需要阻止对话框关闭时,需要使用新增的before-close
函数 prop。before-close
prop 对应的函数类型为function(type: string): boolean=|Promise<boolean=>
,type
将会是Dialog
组件关闭操作的类型,默认情况下会有ok
与cancel
。返回值可以是一个boolean
,也可以是一个 resolveboolean
的Promise
,用来处理可能需要异步决定对话框关闭状态的情况。返回值或 resolve 值非false
时才会关闭对话框。例如,如果我们要异步处理ok
,而对cancel
直接关闭,可以按如下方式处理:<veui-dialog :open.sync="dialogOpen" :before-close="submit" >...</veui-dialog >
methods: { submit (type) { if (type === 'ok') { return axios.post('/item/create', {/* ... */}) .then(({ id, error }) => { if (error) { this.showError(error) return false // resolve `false` 将阻止对话框关闭 } }) } // resolve 但不返回 `false` 时会关闭对话框 }, // ... }
对于需要重写 slot(例如添加底部按钮等)的情况,可以使用新增的 slot 参数
close
,类型为function(type: string): void
,使用者只需要在合适的时机自行调用close
函数即可,type
默认支持ok
/cancel
并会透传到before-close
的流程中。例如:<veui-dialog :open.sync="dialogOpen" :before-close="submit"> ... <template slot="foot" slot-scope="{ close }" ><button @click="close">OK</button></template > </veui-dialog>
- ⚠️
Pagination
组件的redirect
事件回调参数从({ page, event })
调整为(page, event)
。 - ⚠️
调整
FilterPanel
组件和Tree
组件的对外接口参数名,统一将options
/option
更名为items
/item
。 - ⚠️
调整
resize
指令的默认每次都触发回调,增加throttle
/debounce
/leading
三个 modifier。 - ⚠️
通过
prompt
manager 以指令式调用输入弹框功能时,现在返回的Promise
在确认提交与取消时resolve
的值分别是字符串和null
,与原生全局prompt
方法一致(原来是{ isOk: true, value }
与false
)。 - ⚠️
Button
组件加载中的文本修改为默认 slot 的内容。 - ⚠️
调整
rule
出错信息变量模板匹配语法从%{ruleValue}
修为${ruleValue}
,旧语法将在1.0.0
移除。 - ⚠️
Alert
组件新增closable
prop,默认为false
,显式指定后才会显示关闭按钮/文本,而非原来的始终显示关闭按钮/文本。 - ⚠️
Alert
组件的close-text
prop 更名为close-label
,close-text
将在1.0.0
移除。 - 💡
Uploader
组件增加自定义上传模式。request-mode
新增可选值custom
,设置为该值时,支持通过新增的 propupload
自定义上传函数。 - 💡
Uploader
组件增加切换动画。 - 💡
Steps
组件的click
事件回调参数增加原生事件对象event
,现为(index, event)
。 - 💡
Overlay
组件浮层根元素上现在增加了对overlay.overlayClass
全局配置项对应类名的输出。 - 💡
Switch
组件现在会透传与Checkbox
组件一致的原生 DOM 事件。 - 💡
Toast
组件增加 propopen
,支持.sync
。 - 💡
Toast
组件增加 slotdefault
。 - 💡
Toast
组件增加全局配置toast.duration
。 - 🐞修复了
Uploader
组件iframe
模式中上传失败后重试时没有上传文件的问题。 - 🐞修复了
Uploader
组件初始化后丢失name
和src
以外的自定义属性丢失的问题。 - 🐞修复了
Overlay
组件中寻找最近父级浮层时,可能跨过太多层级的问题。 - 🐞修复了
FilterPanel
组件在不展示搜索框的时候,内容区域高度不正确的问题。 - 🐞修复了
Field
组件内部输入组件交互时数据同步导致校验不正确的问题。 - 🐞修复了
Tabs
组件使用label
slot 时的事件绑定问题。 - 🐞修复了
Input
组件父级设置值为null
后,仅格式化本地值为''
,未同步''
至父级的问题。 - 🐞去除了
Steps
组件的多余外边距。 - 🐞去除了
Progress
组件多余的内边距。 - 🐞修正了
Progress
组件的auto-succeed
prop 的逻辑。 - 🐞修正了
NumberInput
组件的min
/max
prop 有时失效的问题。 - 🐞修正了
Alert
组件多消息导航和关闭按钮不会同时显示的问题。 - 🐞修正了
alert
/confirm
/prompt
plugin 不能正常工作的问题。 - 🐞修复了
Table
组件foot
slot 的渲染。
1.0.0-alpha.14
- ⚠️
Progress
组件的state
prop 更名为status
。state
将在1.0.0
移除。 - ⚠️
Schedule
组件的shortcuts-display
prop 值expand
/collapse
分别更名为inline
/popup
。旧的值将在1.0.0
移除。 - ⚠️
Schedule
组件的header
slot 更名为header-content
,新header
slot 现在包括顶部内容的整个容器。 - 💡
RegionPicker
组件的datasource
prop 中的id
字段重命名为value
,但id
依然保留,优先使用value
。 - 💡优化了
outside
指令解析数字值的逻辑。 - 💡为
Pagination
组件内的Select
组件新增了overlay-class
定义,方便自定义样式。 - 💡优化了
Switch
、Steps
、Schedule
、Table
、Fieldset
等组件的可访问性,实现了键盘交互。 - 🐞修复了更多在计算浮层层级过程中有时会导致死循环的场景。
- 🐞去除了
dropdown
mixin 中多余的默认overlay-options
约束条件,修正某些场景下的浮层展开的默认方向。 - 🐞修复了
Input
组件初始值为null
时使用输入法会失效的问题。 - 🐞现在
Searchbox
组件在suggestions
变化时会自动更新浮层位置。 - 🐞修复了点击
Label
组件激活同Field
下的输入组件时,没有考虑组件禁用/只读状态的问题。
1.0.0-alpha.13
- ⚠️
Checkbox
、Switch
组件新增 propmodel
,对应v-model
。checked
prop 不再对应v-model
,而是支持.sync
。 - ⚠️
Checkbox
、Radio
、Switch
组件新增input
事件用于v-model
。change
事件参数抛出当前的checked
值,仅在用户切换时触发。 - ⚠️
Calendar
组件的selectstart
事件抛出的参数格式从[Date]
修改为Date
,表示选择的起始日期,去除多余的数组。 - ⚠️移除
DatePicker
组件的placeholderBegin
、placeholderEnd
prop 及相应的 slotplaceholder-begin
、placeholder-end
,以及全局配置datepicker.placeholderBegin
、datepicker.placeholderEnd
。取而代之的是,增加配置项datepicker.rangePlaceholder
,并总是响应外部设置的placeholder
prop。默认状态下,会根据range
prop 来显示datepicker.placeholder
或datepicker.rangePlaceholder
的值。 - ⚠️
DatePicker
组件的date
scoped slot 现在会透传给内部的Calendar
的同名 scoped slot,不再表示已选择日期区域。原来已选择位置的 scoped slot 重命名为selected
,为范围选择时;类型为Date
的date
字段废弃,取而代之的是三个类型为number
的字段:year
、month
(0
表示一月)、date
;增加参数字段position
,起止日期分别对应from
和to
。 - ⚠️
Carousel
组件的轮播项内容现在完全在 scoped slotitem
内部,不再在外部添加行内图片背景样式,方便自定义非图片类型的轮播项。 - 💡
veui-loader
支持 webpack 4,resolve 路径逻辑调整为异步。 - 💡为
RegionPicker
添加了键盘导航和 WAI-ARIA 支持。 - 💡
BreadcrumbItem
和Link
组件的to
prop 支持使用Object
格式(以传递具名路由对象)。 - 💡
DatePicker
组件增加today
prop,和Calendar
对应prop
一致。 - 💡
DatePicker
组件的format
prop 现在可以传入函数,签名为function(Date): string
。 - 💡
DatePicker
组件的shortcuts
配置中,to
字段新增默认值0
。 - 💡
Input
组件新增 WebKit 自动填充状态的判断,优化样式。 - 💡
Tabs
新增 ui 值block
,并带动画效果。 - 💡
Tab
组件新增status
prop。 - 💡
Tab
组件在路由模式下会自动渲染<router-view>
。 - 💡[*]
Tab
组件的 propto
现在可以使用相对路径。 - 💡
resize
指令底层升级,切换到resize-detecor
,并增加 debounce 优化。 - 💡
RadioGroup
、CheckboxGroup
、RadioButtonGroup
及CheckButtonGroup
组件的默认 scoped slot 参数增加index
表示选项序号。 - 💡
numeric
校验规则现在禁止多余的0
开头的字符串值。 - 💡
Select
组件的 scoped slotlabel
现在作用域绑定到完整的已选中的options
项,而非{ label }
。 - 🐞修复了上一版本中引入的浮层
autofocus
失效的问题。 - 🐞修复了上一版本中引入的在计算浮层层级过程中有时会导致死循环的问题。
- 🐞修复了
Textarea
组件初始value
为null
时的问题。 - 🐞修复了
Input
组件在 SSR 时报错的问题。 - 🐞
input
类型组件的错误状态通过组件数据进行传递,而不仅仅依赖于外层Field
的class
。 - 🐞修复了
Tab
使用路由模式时设置name
prop 会出错的问题。 - 🐞修复了
Table
的update:selected
事件有时未正确抛出的问题。 - 🐞修复了
Progress
组件 prop 校验的问题。 - 🐞修复了
OptionGroup
组件未将disabled
传递给Option
组件的问题。
1.0.0-alpha.12
- ⚠️
Uploader
组件在maxCount
的值是1
的情况下,value
的默认类型从字符串改成对象,可以通过设置 propcompat
为true
将value
的类型设置为字符串兼容旧版本。compat
模式未来不会移除,但不建议使用。迁移指南
Uploader
在max-count
为1
时的value
prop 数据类型修改为对象,和多文件时的数组项相同。需要兼容原字符串数据格式时,需要设置compat
prop 为true
:<veui-uploader compat ... />
- ⚠️
修改了
Radio
组件的v-model
语义,现在机制和 Vue.js 对原生<input type="radio">
的处理保持一致。迁移指南
此版本前的
Radio
组件的v-model
对应checked
属性,但由于之前的版本中存在多个同name
的Radio
组件时,被取消选中的单选框并不会响应数据变化,导致实际v-model
并不完全可用。新版本在使用v-model
的场景下修复了这个问题,并把逻辑和 Vue.js 对原生元素的处理方式进行了对齐。<veui-radio value="html" name="lang" v-model="lang" /> <veui-radio value="css" name="lang" v-model="lang" /> <veui-radio value="javascript" name="lang" v-model="lang" />
通过将多个
Radio
组件的v-model
绑定到同一个数据项,即可完成数据的双向绑定。注意,仍然建议使用name
属性来正确表达分组。这将会影响元素的可访问性。同时,更建议使用
RadioGroup
组件来实现单选组,因为它会有更简单的 API 和可访问性。 - ⚠️
移除
Input
组件的type
prop 对textarea
的支持。迁移指南
使用
Textarea
组件进行替代:<veui-textarea v-model="value" ... />
- ⚠️
将
OptionGroup
的position
属性的popout
值重命名为了popup
(与aria-haspopup
保持一致)。将在1.0.0
移除对popout
的支持。 - ⚠️
将
Progress
组件的precision
prop 重命名为和NumberInput
一致的decimal-place
。precision
将在1.0.0
移除。 - 💡
babel-plugin-veui
支持在import
时为组件添加前缀,方便直接使用快捷写法定义组件的components
选项。默认支持veui-
和v-
两种前缀。<template> <div> <veui-button>确定 <v-icon name="check"></veui-button> </div> </template> <script> import { VeuiButton, VIcon } from 'veui' export default { name: 'my-component', components: { VeuiButton, VIcon } } </script>
- 💡
NumberInput
新增max
/min
prop,优先从直接父组件Field
的 proprule
中继承max
/min
rule 的值。 - 💡
Input
新增clearable
prop,提供清除输入内容的功能;补充placeholder
prop 对 IE9 的支持。 - 💡
Uploader
组件的事件success
、failure
、remove
增加参数:当前处理文件的序号。 - 💡
Uploader
组件在重新上传的时候不再触发remove
事件。 - 💡
增加了
Select
、Dropdown
、Carousel
、Pagination
及Progress
等组件的 WAI-ARIA 支持。 - 🐞修复了
Textarea
触发事件时没有正确处理this
的问题。 - 🐞修复了
NumberInput
在只读状态下可以用键盘上下键调整值的问题。 - 🐞修复了
outside
指令设置delay
时未清除定时器的问题。 - 🐞修复了浮层
z-index
未更新完毕就展现造成的闪动问题。
1.0.0-alpha.11
- 🐞修复了
config/uiTypes.js
命中npmignore
规则被过滤的问题。
1.0.0-alpha.10
- ⚠️
AlertBox
组件,之前只能通过ui
prop 传递类型信息(success
/error
/info
),现在和Toast
保持风格统一,使用type
prop 传递类型信息。迁移指南
对于非如下两种情况的用户,本次变更并不产生影响。
-
所有直接使用
AlertBox
的情况下,需要将如ui="success"
修改为type="success"
的方式进行指定。 -
对于主题包的作者,需要将原来针对如
[ui~="success"]
编写的样式,修改为.veui-alert-box-success
。
-
- ⚠️
[预告]
Input
组件的type
prop 将在下个版本去除对textarea
的支持,请使用Textarea
组件代替。 - 💡新增了
NumberInput
组件。 - 💡为
Input
增加了before
/after
slot,提供扩展的空间。 - 💡为
Select
增加了filter
prop,用来过滤下拉内容。 - 💡为
OptionGroup
增加了position
prop,用来指定在弹出菜单中显示。 - 💡为
Option
增加了hidden
prop。 - 💡为
Overlay
增加了locate
事件,在位置发生变化时触发(时机为tether
的reposition
事件)。 - 💡
Searchbox
组件增加suggest-trigger
prop,用来指定推荐列表的弹出时机;增加suggest
事件,当需要显示推荐列表时触发。 - 💡
Field
的rules
中增加priority
的配置,用来覆盖当前内置的规则优先级。 - 💡将
icons
mixin 并入ui
。 - 💡支持配置
ui
prop 项的元数据,以支持进一步校验及根据ui
值配置图标。 - 💡将
Progress
组件硬编码在组件代码中的尺寸解耦到veui-theme-one
中,现在组件可以从主题包的 JS 模块中注入预定义的样式参数。 - 💡
Uploader
组件的image
模式在图片的遮罩层上增加 scoped-slotextra-operation
;在上传项目前后分别增加file-before
和file-after
两个 scoped slot。 - 💡
Uploader
组件增加 proporder
,配置新上传文件的插入顺序。 - 🐞为
uiTypes
定制了选项合并策略,并修正了Select
组件在uiTypes
中声明的input
被 mixin 中加入的select
覆盖的问题。 - 🐞去除了
Link
组件中错误注册组件的代码。 - 🐞修复了关闭非
modal
的Dialog
时FocusManager
报错的问题。 - 🐞修复了
FocusManager
在trap
模式下会自动聚焦最后一个元素的问题。 - 🐞修复了
Textarea
组件在 IE9 下的兼容性问题。 - 🐞修复了
Field
组件使用slot
时class
判断遗漏的问题。 - 🐞修复了
pattern
/numeric
校验规则的优先级,使pattern
置于numeric
之后。 - 🐞去除了
rule
校验失败信息中包含部分校验成功的无用信息。 - 🐞去除了
Input
部分过时的 prop。
1.0.0-alpha.9
- ⚠️
将对 Vue 的依赖更新到
^2.5.13
。这使得使用 scoped slot 时,scope
需要改写为slot-scope
。由于 VEUI 内部已经使用slot-scope
,所以该版本无法与vue@2.5.0
之前的版本一同使用。迁移指南
请检查项目中所有用到
<template slot="..." scope="...">...</template>
的地方,统一替换为:
<template slot="..." slot-scope="...">...</template>
同时,由于
vue@2.5.3
修改了 slot 的逻辑,所以当代码中存在使用<template slot="..."></template>
的写法来将 slot 内容置空时,现在会自动使用定义 slot 时备用内容填充而非置空,暂时的方法是使用一个零宽空格(
&#8203;
)来填充。 - 💡为
Tabs
、ButtonGroup
、Dialog
、Calendar
等数十个组件增加了键盘导航及 WAI-ARIA 支持。 - 💡新增
Slider
组件。 - 💡新增
nudge
指令。 - 💡新增
OptionGroup
组件。 - 💡
Select
、Dropdown
组件支持直接组件内嵌写法。 - 💡
Select
、Dropdown
组件支持键盘导航。 - 🐞对话框现在可以整体获取焦点,避免点击无焦点区域后接收不到键盘事件的问题。
- 🐞修正了
PromptBox
默认样式。 - 🐞修正了
RadioGroup
的聚焦样式。 - 🐞修复
Textarea
组件在显示行号模式下高度设置的问题。 - 🐞修复
drag
指令的问题,防止在移动后窗口大小变化后产生的位置错误。 - 🐞修复了
Pagination
组件在翻页按钮禁用时点击后依然抛出事件的问题。
1.0.0-alpha.8
- 💡增加了焦点管理模块。
- 💡
Overlay
组件增加autofocus
和modal
两个 prop,分别用来指定浮层是否需要抢占焦点、以及是否将后续焦点移动限制在浮层内。 - 💡
Dialog
组件增加escapable
prop,允许对话框通过按下 esc 键关闭。 - 💡
- 💡增加了
Input
组件的tiny
及micro
尺寸样式。 - 🐞修复了
Select
组件下拉菜单展开后自动将选中项滚动到可视范围时可能引起页面滚动的问题。 - 🐞
babel-plugin-veui
及veui-loader
内不再冗余生成组件列表,组件列表信息随veui
包发布。
1.0.0-alpha.7
- ⚠️
将对
wicg-focus-ring@2.x
的依赖更新为focus-visible
+classlist-polyfill
,并且移入了veui-theme-one
的dependencies
。使用veui-theme-one
且需兼容 IE9 的项目需要同时引入这两个模块。同时veui-theme-one
中的.focus-ring
也均已升级为.focus-visible
。迁移指南
-
在主模块中删除 `import 'wicg-focus-ring';
-
安装上述包后,将引入语句替换为:
import "classlist-polyfill"; import "focus-visible";
-
- ⚠️
去除了
veui-theme-one
中Alert
组件默认的上下margin
。 - ⚠️
Column
组件的 scoped slothead
和foot
现在变更为 slot。 - ⚠️
删除
veui-theme-dux
。 - ⚠️
删除
Field
组件 proprules
默认可选表单校验规则maxByte
和minByte
。 - 💡新增
Textarea
组件。 - 💡
Column
组件新增 propspan
,用来指定行/列方向合并单元格的逻辑。 - 💡
Column
组件的默认 scoped slot 传入的参数现在会将列表项的数据展开,不需要多加一层item
进行访问(与其它类似数据源的组件一致,需注意数据源对象中不能使用item
/index
作为属性名)。 - 💡
Table
组件新增 propkey-field
,指明用哪一个 field 作为表格数据的键。当Table
为selectable
时,可以用来指定选择列纵向合并单元格的逻辑需要参照的列,以及选择逻辑返回的值来自哪一列。 - 💡优化
Column
组件注册到Table
的逻辑,支持在模板中通过v-for
、v-if
等动态配置,并且将注册过程移入created
生命周期以支持服务端渲染。 - 💡
Breadcrumb
组件routes
数据项的文本域重命名为label
,保留了text
的用法进行兼容。 - 💡
Uploader
组件增加statuschange
事件,用于表单提交的时候校验是否还有文件正在上传或上传失败。 - 💡
Uploader
组件增加 propdata-type
,用于指明回调的内容的格式。 - 💡
Uploader
组件 propname
现在有默认值file
。 - 💡
Field
组件优化交互式校验规则显示顺序。 - 💡
Field
proprules
校验规则的出错消息支持传入函数。 - 💡
Select
组件被选中的选项现在会在浮层展开时自动滚动到可视范围。 - 🐞修复
Schedule
组件状态未与selected
prop 同步的问题。 - 🐞修复
Tabs
组件在仅指定active
时会导致无法切换的问题。 - 🐞修复
Tooltip
组件在target
变化时会自动显示的问题。 - 🐞
Uploader
组件的value
不再包含正在上传中或上传失败的文件,不再包含status
等内部变量。 - 🐞修复
Uploader
组件accept
prop 判断后缀的错误。 - 🐞修复
resize
指令在target
元素被移动过后丢失目标document
的问题。 - 🐞修复大小比较规则的提示信息。
- 🐞修复使用 Popper 风格设置浮层
position
时解析不正确的问题。
1.0.0-alpha.6
- 🐞修复
RegionPicker
末层数据项禁用不生效的问题。 - 🐞修复
Tabs
组件样式,解耦硬编码的图标,优化内容溢出更新视图的计算逻辑。 - 🐞修复全局配置无法读取函数配置项的问题。
- 🐞修复全局浮层管理模块计算
zIndex
错误的问题。
1.0.0-alpha.5
- ⚠️为
Select
用名为option-label
的 scoped slot 替代了原来的option
。原来的option
现在为整个选项的内容,包括文本和图标等。 - 💡新增
resize
指令。 - 💡
Tabs
组件中的Tab
元素不再需要强制配置name
prop。 - 💡
Alert
组件显示多条消息时,增加当前消息索引/总消息数的展示。 - 💡调整
Alert
组件默认 slot 范围,同时新增默认 scoped slot。 - 💡
RegionPicker
组件支持数据项的禁用。 - 🐞修复
Tabs
组件中Tab
元素的渲染顺序和 prop 同步问题。 - 🐞修复
Searchbox
组件在按 enter 后自动触发表单提交的问题。 - 🐞修复
Overlay
组件中判断组件类型错误的问题。 - 🐞
Calendar
组件在时间段选择过程中,如果selected
发生变更,现在会自动清除半选状态。 - 🐞修复
veui-loader
在 Windows 下生成路径错误的问题。 - 🐞修复
Uploader
组件文件名没有去掉fakepath
前缀的问题。 - 🐞修复
Uploader
组件没有正确使用name
prop 的问题。
1.0.0-alpha.4
- ⚠️
重构了
babel-plugin-veui
及veui-loader
的逻辑,以支持服务端渲染时首屏样式的抽取。迁移指南
-
删除
build/vue-loader.conf.js
中preLoaders
中的veui-loader
配置; -
将
.babelrc
中的veui
插件配置删除,整个只保留字符串'veui'
; -
在
build/webpack.base.conf.js
中,重新配置veui-loader
:
{ test: /\.vue$/, loader: 'veui-loader', enforce: 'pre', options: { modules: [ { package: 'veui-theme-one', fileName: '${module}.less' }, { package: 'veui-theme-one', fileName: '${module}.js', transform: false } ] }, include: [resolve('veui'), resolve('vue-awesome')] }
-
- ⚠️
将
Pager
组件重命名为Pagination
。暂时保留兼容,Pager
将在1.0.0
移除。 - 🐞修正了
Carousel
组件 slot 的位置。
1.0.0-alpha.3
- 🐞统一所有内部依赖版本。
1.0.0-alpha.2
- 🐞修复主题包
peerDependencies
中的veui
版本号。
1.0.0-alpha.1
- ⚠️主题包
veui-theme-x
重命名为正式名称veui-theme-one
。 - 💡新增
Tree
组件。 - 💡新增
FilterPanel
组件。 - 💡新增
Transfer
组件。 - 💡新增
Schedule
组件。 - 💡为
babel-plugin-veui
增加了类似babel-plugin-lodash
的功能,以减小打包体积。 - 💡
Tabs
组件支持在传入的 slot 内容中动态切换内部的Tab
元素,增加预设的添加删除按钮。 - 💡
outside
指令新增excludeSelf
参数,使判断仅对refs
生效。 - 💡
outside
指令新增mousedown
、mouseup
的支持。 - 💡
Tooltip
组件新增interactive
prop,控制浮层是否可交互。 - 💡
Calendar
组件新增 scoped slotdate
。 - 🐞修复
Calendar
组件在选择范围时错误切换视图的问题。 - 🐞
Checkbox
和Radio
组件现在可以在未绑定数据时进行交互。 - 🐞修复 Chrome 62 起给按钮默认添加圆角的问题。
0.3.3
- ⚠️
Uploader
本地校验失败的 slot 名修改为type-invalid
及size-invalid
。 - 💡
config
模块支持对对象配置的merge
、mergeDefaults
操作。 - 💡为调用了
Overlay
组件的元素增加了指定overlay-options
的功能。 - 💡新增了
Carousel
组件。 - 🐞修复
config
模块参数重载错误的问题。 - 🐞修复
Uploader
禁用input
导致上传失败的问题。 - 🐞修复了
RegionPicker
浮层有时会闪动的问题。
0.3.2
- 🐞修正
Calendar
单元格的文字颜色、背景色相关样式。 - 🐞修复上个版本完善
outside
指令时引入的问题。
0.3.1
- 💡
Tooltip
增加延时隐藏的 prophide-delay
。 - 🐞修复不引入
ButtonGroup
时,CheckButtonGroup
和RadioButtonGroup
部分样式丢失的问题。
0.3.0
- ⚠️
- ⚠️移除了
BreadCrumb
组件的 proprouters
。 - ⚠️
Pager
组件to
默认值修改为''
(空字符串),以进入Link
的无跳转逻辑。 - ⚠️移除了
Pager
组件的 proppageTotal
。 - ⚠️
Radiobox
组件重命名为Radio
。 - ⚠️
RadioboxGroup
组件重命名为RadioGroup
。 - ⚠️
Button
组件的aux
风格ui
现在是默认样式,原有的默认样式更名为secondary
。 - ⚠️为组件支持了
:focus-ring
的 polyfill,需要使用方自行引入。详见 #121。 - ⚠️优化了
Uploader
组件的部分 prop、slot 的命名。详见 #133。 - ⚠️
- 💡增加了统一 UI 样式包,暂定名
veui-theme-x
。 - 💡将所有图标移入样式包分别管理。
- 💡
Uploader
的 propmaxSize
现在支持形如'100KB'
的字符串作为值。 - 💡为
Table
增加select-mode
prop,用于提供单选模式。 - 💡增加
ButtonGroup
组件。 - 💡增加
RadioButtonGroup
组件。 - 💡增加
CheckButtonGroup
组件。 - 💡增加
Sorter
组件。 - 💡增加
Progress
组件(限theme-x
)。 - 💡所有有单一浮层逻辑的组件,新增 prop
overlay-class
,最终渲染到Overlay
实例的 DOMclass
上,方便外部区分浮层归属。 - 🐞修复
RegionPicker
浮层在特殊情况下显示上的问题。 - 🐞修复
Dropdown
在ui
为link
时的样式。
0.2.4
- ⚠️
Table
组件的select
事件将在selected
prop 更新后触发,select
事件在全选时增加null
值作为当前选择项的数据,参数列表修改为和单选时一致。 - 💡增加
veui-loader
,确保只在 Webpack 能够 resolve 样式文件时babel-plugin-veui
才注入样式import
语句。 - 💡改善
Button
、Table
组件的样式。 - 💡为
Link
组件增加fallback
prop,用于指定无链接时渲染的容器标签名。 - 💡为
Steps
添加路由支持。 - 💡
Select
组件选项值现在支持''
(空字符串)或0
。 - 💡为
Select
组件添加未命名分组样式。 - 💡为
Switch
组件增加描述及默认 slot。 - 💡为
Searchbox
组件增加clearable
prop,suggestions
scoped slot 以及select
事件,suggestions
支持字符串数组。 - 🐞修正
indeterminate
状态Checkbox
的浏览器兼容性。 - 🐞修正
RegionPicker
无法响应外部selected
变化的问题。
0.2.3
- 🐞修复
0.2.2
版本 npm 包的问题。
0.2.2
- ⚠️
SearchBox
重命名为Searchbox
。 - 💡增加
$alert
、$confirm
、$prompt
插件。 - 💡增加
RegionPicker
组件。 - 💡增加
Steps
组件。 - 💡去除
Breadcrumb
、Table
、Tabs
中对 Vue 内部函数的依赖。 - 💡为
Overlay
组件增加open.sync
支持。 - 🐞修复
outside
指令重复添加事件绑定的问题。 - 🐞修复
Calendar
组件年份选择视图前后选择不正确的问题。
0.2.1
- 💡增加了
SearchBox
组件。 - 💡为
Select
组件增加了clearable
prop,可以根据placeholder
生成首选项以清除之前的选择。 - 💡优化了
Button
中元素的对齐方式。 - 💡增加了
Pager
每页显示数和默认选项的全局配置。 - 💡重命名
Pager
的page-total
prop 为total
,旧名称仍然兼容,未来版本可能删除。 - 🐞修复
Select
组件有分组时子选项无法正常选择的问题。 - 🐞修复了
Tooltip
组件在循环中绑定target
的问题。 - 🐞修复了
Table
组件 slotno-data
失效的问题。 - 🐞修复了
Table
组件在选择时会修改未添加.sync
的selected
prop 的问题。 - 🐞修复了
Pager
在没有数据时下一页按钮没有禁用的问题。
0.2.0
- 💡项目转为 mono-repo 的组织方式,使用
lerna
进行管理。 - 💡将样式代码独立为单独的包
veui-theme-dux
。 - 💡使用
babel-plugin-veui
识别、改写对组件的引用,无缝引入可配置的样式文件包。 - 💡增加
Form
、Field
、Fieldset
组件。 - 💡根据表单逻辑修改了输入型控件
disabled
/readonly
的实际生效方式,最终生效的值更改为计算属性realDisalbed
/realReadonly
。 - 💡增加
Tabs
和Tab
组件。 - 💡增加
Switch
组件。 - 💡
Checkbox
新增true-value
和false-value
prop,调整相应逻辑。 - 💡增加指令式调用
alert
/confirm
/prompt
的功能。 - 💡
Pager
组件新增pageSizes
prop,用来指定可选的页数。
0.1.3
- 💡将
BreadCrumb
组件的routers
prop 重命名为routes
,后续版本会将routers
移除。 - 💡小幅重构
Table
组件代码。 - 🐞修复
Icon
组件嵌套失效的问题。 - 🐞修正
Table
组件样式中行高不准确的问题。