breaking change(Tabs): remove click、disabled event

This commit is contained in:
chenjiahan 2021-11-03 16:05:37 +08:00
parent 6a4033b6bc
commit 099141f6c5
3 changed files with 6 additions and 35 deletions

View File

@ -12,3 +12,7 @@
- `default` 插槽重命名为 `toolbar` - `default` 插槽重命名为 `toolbar`
- 移除了 `value-key` 属性,使用 `columnsFieldNames` 属性代替 - 移除了 `value-key` 属性,使用 `columnsFieldNames` 属性代替
### Tabs
- 移除了 `click``disabled` 事件,使用 `click-tab` 事件代替

View File

@ -270,8 +270,6 @@ export default {
| rendered | Emitted when content first rendered in lazy-render mode | _name: string \| number, title: string_ | | rendered | Emitted when content first rendered in lazy-render mode | _name: string \| number, title: string_ |
| scroll | Emitted when tab scrolling in sticky mode | _{ scrollTop: number, isFixed: boolean }_ | | scroll | Emitted when tab scrolling in sticky mode | _{ scrollTop: number, isFixed: boolean }_ |
> Tipsclick and disabled event is deprecatedplace use click-tab event instead.
### Tabs Methods ### Tabs Methods
Use [ref](https://v3.vuejs.org/guide/component-template-refs.html) to get Tabs instance and call instance methods. Use [ref](https://v3.vuejs.org/guide/component-template-refs.html) to get Tabs instance and call instance methods.

View File

@ -10,7 +10,6 @@ import {
CSSProperties, CSSProperties,
defineComponent, defineComponent,
ExtractPropTypes, ExtractPropTypes,
getCurrentInstance,
ComponentPublicInstance, ComponentPublicInstance,
} from 'vue'; } from 'vue';
@ -90,31 +89,9 @@ export default defineComponent({
props: tabsProps, props: tabsProps,
emits: [ emits: ['change', 'scroll', 'rendered', 'click-tab', 'update:active'],
'click',
'change',
'scroll',
'disabled',
'rendered',
'click-tab',
'update:active',
],
setup(props, { emit, slots }) { setup(props, { emit, slots }) {
if (process.env.NODE_ENV !== 'production') {
const props = getCurrentInstance()?.vnode?.props;
if (props && 'onClick' in props) {
console.warn(
'[Vant] Tabs: "click" event is deprecated, using "click-tab" instead.'
);
}
if (props && 'onDisabled' in props) {
console.warn(
'[Vant] Tabs: "disabled" event is deprecated, using "click-tab" instead.'
);
}
}
let tabHeight: number; let tabHeight: number;
let lockScroll: boolean; let lockScroll: boolean;
let stickyFixed: boolean; let stickyFixed: boolean;
@ -302,11 +279,7 @@ export default defineComponent({
disabled, disabled,
}); });
if (disabled) { if (!disabled) {
// @deprecated
// should be removed in next major version
emit('disabled', name, title);
} else {
callInterceptor(props.beforeChange, { callInterceptor(props.beforeChange, {
args: [name], args: [name],
done: () => { done: () => {
@ -315,10 +288,6 @@ export default defineComponent({
}, },
}); });
// @deprecated
// should be removed in next major version
emit('click', name, title);
route(item as ComponentPublicInstance<RouteProps>); route(item as ComponentPublicInstance<RouteProps>);
} }
}; };