refactor: createrefHooks to ref
parent
da207c8d9b
commit
4cb214917f
|
@ -1 +1 @@
|
|||
Subproject commit 19713260a1fcd951d75129e542f40c8e7c1bac35
|
||||
Subproject commit 68d4ed26e381b03b4d90701184a724b892f213e2
|
|
@ -2,7 +2,6 @@ import PropTypes from './vue-types';
|
|||
import switchScrollingEffect from './switchScrollingEffect';
|
||||
import setStyle from './setStyle';
|
||||
import Portal from './Portal';
|
||||
import createRefHooks from './createRefHooks';
|
||||
|
||||
let openCount = 0;
|
||||
const windowIsUndefined = !(
|
||||
|
@ -142,7 +141,7 @@ export default {
|
|||
<Portal
|
||||
getContainer={this.getDomContainer}
|
||||
children={children(childProps)}
|
||||
{...createRefHooks(this.savePortal)}
|
||||
ref={this.savePortal}
|
||||
></Portal>
|
||||
);
|
||||
}
|
||||
|
|
|
@ -1,14 +0,0 @@
|
|||
const createRefHooks = fn => {
|
||||
return {
|
||||
onVnodeBeforeMount: vnode => {
|
||||
fn((vnode.component && vnode.component.ctx) || vnode.el, vnode.key);
|
||||
},
|
||||
onVnodeUpdated: vnode => {
|
||||
fn((vnode.component && vnode.component.ctx) || vnode.el, vnode.key);
|
||||
},
|
||||
onVnodeUnmounted: vnode => {
|
||||
fn(null, vnode.key);
|
||||
},
|
||||
};
|
||||
};
|
||||
export default createRefHooks;
|
|
@ -6,7 +6,6 @@ import VcSwitch from '../vc-switch';
|
|||
import Wave from '../_util/wave';
|
||||
import { ConfigConsumerProps } from '../config-provider';
|
||||
import warning from '../_util/warning';
|
||||
import createRefHooks from '../_util/createRefHooks';
|
||||
|
||||
const Switch = {
|
||||
name: 'ASwitch',
|
||||
|
@ -72,7 +71,7 @@ const Switch = {
|
|||
disabled: disabled || loading,
|
||||
...$attrs,
|
||||
class: classes,
|
||||
...createRefHooks(this.saveRef),
|
||||
ref: this.saveRef,
|
||||
};
|
||||
|
||||
return (
|
||||
|
|
|
@ -65,6 +65,7 @@ const TabBar = {
|
|||
const renderProps = {
|
||||
...this.$props,
|
||||
...this.$attrs,
|
||||
children: null,
|
||||
inkBarAnimated,
|
||||
extraContent: tabBarExtraContent,
|
||||
prevIcon,
|
||||
|
|
|
@ -153,6 +153,7 @@ export default {
|
|||
tabBarExtraContent,
|
||||
renderTabBar: renderTabBarSlot,
|
||||
...restProps,
|
||||
children,
|
||||
};
|
||||
const contentCls = {
|
||||
[`${prefixCls}-${tabPosition}-content`]: true,
|
||||
|
|
|
@ -11,7 +11,6 @@ import { getComponent, filterEmpty, getSlot, splitAttrs, findDOMNode } from '../
|
|||
import { requestAnimationTimeout, cancelAnimationTimeout } from '../_util/requestAnimationTimeout';
|
||||
import { noop, loopMenuItemRecursively, getMenuIdFromSubMenuEventKey } from './util';
|
||||
import getTransitionProps from '../_util/getTransitionProps';
|
||||
import createRefHooks from '../_util/createRefHooks';
|
||||
|
||||
let guid = 0;
|
||||
|
||||
|
@ -483,7 +482,7 @@ const SubMenu = {
|
|||
...titleClickEvents,
|
||||
style,
|
||||
class: `${prefixCls}-title`,
|
||||
...createRefHooks(this.saveSubMenuTitle),
|
||||
ref: this.saveSubMenuTitle,
|
||||
};
|
||||
|
||||
// expand custom icon should NOT be displayed in menu with horizontal mode.
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
import { switchPropTypes } from './PropTypes';
|
||||
import BaseMixin from '../_util/BaseMixin';
|
||||
import { hasProp, getOptionProps, getComponent } from '../_util/props-util';
|
||||
import createRefHooks from '../_util/createRefHooks';
|
||||
|
||||
// function noop () {
|
||||
// }
|
||||
|
@ -107,7 +106,7 @@ export default {
|
|||
'aria-checked': checked,
|
||||
disabled,
|
||||
class: switchClassName,
|
||||
...createRefHooks(this.saveRef),
|
||||
ref: this.saveRef,
|
||||
};
|
||||
|
||||
return (
|
||||
|
|
|
@ -8,7 +8,6 @@ import {
|
|||
getActiveIndex,
|
||||
} from './utils';
|
||||
import BaseMixin from '../../_util/BaseMixin';
|
||||
import createRefHooks from '../../_util/createRefHooks';
|
||||
|
||||
function componentDidUpdate(component, init) {
|
||||
const { styles = {}, panels, activeKey, direction } = component.$props;
|
||||
|
@ -117,13 +116,6 @@ export default {
|
|||
[className]: true,
|
||||
[inkBarAnimated ? `${className}-animated` : `${className}-no-animated`]: true,
|
||||
};
|
||||
return (
|
||||
<div
|
||||
style={styles.inkBar}
|
||||
class={classes}
|
||||
key="inkBar"
|
||||
{...createRefHooks(this.saveRef('inkBar'))}
|
||||
/>
|
||||
);
|
||||
return <div style={styles.inkBar} class={classes} key="inkBar" ref={this.saveRef('inkBar')} />;
|
||||
},
|
||||
};
|
||||
|
|
|
@ -8,7 +8,7 @@ export default {
|
|||
name: 'ScrollableInkTabBar',
|
||||
inheritAttrs: false,
|
||||
render() {
|
||||
const { default: renderTabBarNode } = this.$slots;
|
||||
const { children: renderTabBarNode } = this.$attrs;
|
||||
return (
|
||||
<SaveRef
|
||||
children={(saveRef, getRef) => (
|
||||
|
|
|
@ -4,7 +4,6 @@ import PropTypes from '../../_util/vue-types';
|
|||
import BaseMixin from '../../_util/BaseMixin';
|
||||
import { getComponent, getSlot } from '../../_util/props-util';
|
||||
import { setTransform, isTransform3dSupported } from './utils';
|
||||
import createRefHooks from '../../_util/createRefHooks';
|
||||
|
||||
function noop() {}
|
||||
export default {
|
||||
|
@ -320,13 +319,13 @@ export default {
|
|||
[`${prefixCls}-nav-container-scrolling`]: showNextPrev,
|
||||
}}
|
||||
key="container"
|
||||
{...createRefHooks(this.saveRef('container'))}
|
||||
ref={this.saveRef('container')}
|
||||
>
|
||||
{prevButton}
|
||||
{nextButton}
|
||||
<div class={`${prefixCls}-nav-wrap`} {...createRefHooks(this.saveRef('navWrap'))}>
|
||||
<div class={`${prefixCls}-nav-wrap`} ref={this.saveRef('navWrap')}>
|
||||
<div class={`${prefixCls}-nav-scroll`}>
|
||||
<div class={navClasses} {...createRefHooks(this.saveRef('nav'))}>
|
||||
<div class={navClasses} ref={this.saveRef('nav')}>
|
||||
{navWrapper(getSlot(this))}
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
import PropTypes from '../../_util/vue-types';
|
||||
import KeyCode from '../../_util/KeyCode';
|
||||
import createRefHooks from '../../_util/createRefHooks';
|
||||
import { getSlot } from '../../_util/props-util';
|
||||
|
||||
const sentinelStyle = { width: 0, height: 0, overflow: 'hidden', position: 'absolute' };
|
||||
|
@ -33,7 +32,7 @@ export default {
|
|||
return (
|
||||
<div
|
||||
tabIndex={0}
|
||||
{...createRefHooks(setRef)}
|
||||
ref={setRef}
|
||||
style={sentinelStyle}
|
||||
onKeydown={this.onKeyDown}
|
||||
role="presentation"
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
import { cloneElement } from '../../_util/vnode';
|
||||
import PropTypes from '../../_util/vue-types';
|
||||
import BaseMixin from '../../_util/BaseMixin';
|
||||
import createRefHooks from '../../_util/createRefHooks';
|
||||
import { getSlot } from '../../_util/props-util';
|
||||
import { getDataAttr } from './utils';
|
||||
function noop() {}
|
||||
|
@ -52,7 +51,7 @@ export default {
|
|||
tabIndex="0"
|
||||
onKeydown={onKeyDown}
|
||||
style={style}
|
||||
{...createRefHooks(this.saveRef('root'))}
|
||||
ref={this.saveRef('root')}
|
||||
{...getDataAttr(restProps)}
|
||||
>
|
||||
{newChildren}
|
||||
|
|
|
@ -3,7 +3,6 @@ import PropTypes from '../../_util/vue-types';
|
|||
import BaseMixin from '../../_util/BaseMixin';
|
||||
import { getComponent, getPropsData } from '../../_util/props-util';
|
||||
import { isVertical } from './utils';
|
||||
import createRefHooks from '../../_util/createRefHooks';
|
||||
function noop() {}
|
||||
export default {
|
||||
name: 'TabBarTabsNode',
|
||||
|
@ -67,7 +66,7 @@ export default {
|
|||
class={cls}
|
||||
key={key}
|
||||
style={style}
|
||||
{...createRefHooks(activeKey === key ? saveRef('activeTab') : noop)}
|
||||
ref={activeKey === key ? saveRef('activeTab') : noop}
|
||||
>
|
||||
{tab}
|
||||
</div>
|
||||
|
@ -79,6 +78,6 @@ export default {
|
|||
rst.push(node);
|
||||
});
|
||||
|
||||
return <div {...createRefHooks(this.saveRef('navTabsContainer'))}>{rst}</div>;
|
||||
return <div ref={this.saveRef('navTabsContainer')}>{rst}</div>;
|
||||
},
|
||||
};
|
||||
|
|
|
@ -12,7 +12,6 @@ import BaseMixin from '../_util/BaseMixin';
|
|||
import Portal from '../_util/Portal';
|
||||
import classNames from 'classnames';
|
||||
import { cloneElement } from '../_util/vnode';
|
||||
import createRefHooks from '../_util/createRefHooks';
|
||||
|
||||
function returnEmptyString() {
|
||||
return '';
|
||||
|
@ -409,7 +408,7 @@ export default {
|
|||
popupStyle,
|
||||
onAlign: $attrs.onPopupAlign || noop,
|
||||
...mouseProps,
|
||||
...createRefHooks(this.savePopup),
|
||||
ref: this.savePopup,
|
||||
};
|
||||
return (
|
||||
<Popup ref="popup" {...popupProps}>
|
||||
|
@ -557,8 +556,8 @@ export default {
|
|||
return action.indexOf('focus') !== -1 || hideAction.indexOf('blur') !== -1;
|
||||
},
|
||||
forcePopupAlign() {
|
||||
if (this.$data.sPopupVisible && this._component && this._component.refs.alignInstance) {
|
||||
this._component.refs.alignInstance.forceAlign();
|
||||
if (this.$data.sPopupVisible && this._component && this._component.$refs.alignInstance) {
|
||||
this._component.$refs.alignInstance.forceAlign();
|
||||
}
|
||||
},
|
||||
fireEvents(type, e) {
|
||||
|
|
Loading…
Reference in New Issue