From 9063d17f8b2a305d4276454b17243e56f38b68a5 Mon Sep 17 00:00:00 2001
From: tanjinzhou <415800467@qq.com>
Date: Thu, 4 Jun 2020 18:35:33 +0800
Subject: [PATCH] feat: update spin
---
components/_util/props-util.js | 2 +-
components/spin/Spin.jsx | 43 +++++++++++++---------------------
package.json | 1 -
3 files changed, 17 insertions(+), 29 deletions(-)
diff --git a/components/_util/props-util.js b/components/_util/props-util.js
index 52e40f70c..195eb1c63 100644
--- a/components/_util/props-util.js
+++ b/components/_util/props-util.js
@@ -127,7 +127,7 @@ const getComponent = (instance, prop, options = instance, execute = true) => {
if (temp !== undefined) {
return typeof temp === 'function' && execute ? temp(options) : temp;
} else {
- let com = instance.$slots[prop] || null;
+ let com = instance.$slots[prop];
com = execute && com ? com(options) : com;
return Array.isArray(com) && com.length === 1 ? com[0] : com;
}
diff --git a/components/spin/Spin.jsx b/components/spin/Spin.jsx
index 51e2d6819..50d3cfef4 100644
--- a/components/spin/Spin.jsx
+++ b/components/spin/Spin.jsx
@@ -1,14 +1,8 @@
-import { inject, cloneVNode } from 'vue';
+import { inject, cloneVNode, isVNode } from 'vue';
import debounce from 'lodash/debounce';
import PropTypes from '../_util/vue-types';
import BaseMixin from '../_util/BaseMixin';
-import {
- filterEmpty,
- initDefaultProps,
- isValidElement,
- getComponent,
- getListeners,
-} from '../_util/props-util';
+import { filterEmpty, initDefaultProps, getComponent } from '../_util/props-util';
import { ConfigConsumerProps } from '../config-provider';
export const SpinSize = PropTypes.oneOf(['small', 'default', 'large']);
@@ -31,17 +25,19 @@ function shouldDelay(spinning, delay) {
}
export function setDefaultIndicator(Content) {
+ const Indicator = Content.indicator;
defaultIndicator =
- typeof Content.indicator === 'function'
- ? Content.indicator
- : h => {
- return