好多大米 4 лет назад
Родитель
Сommit
1ef72a3283
1 измененных файлов с 11 добавлено и 7 удалено
  1. 11 7
      packages/message/src/main.js

+ 11 - 7
packages/message/src/main.js

@@ -2,6 +2,7 @@ import Vue from 'vue';
 import Main from './main.vue';
 import { PopupManager } from 'element-ui/src/utils/popup';
 import { isVNode } from 'element-ui/src/utils/vdom';
+import { isObject } from 'element-ui/src/utils/types';
 let MessageConstructor = Vue.extend(Main);
 
 let instance;
@@ -44,14 +45,17 @@ const Message = function(options) {
 };
 
 ['success', 'warning', 'info', 'error'].forEach(type => {
-  Message[type] = options => {
-    if (typeof options === 'string') {
-      options = {
-        message: options
-      };
+  Message[type] = (options) => {
+    if (isObject(options) && !isVNode(options)) {
+      return Message({
+        ...options,
+        type
+      });
     }
-    options.type = type;
-    return Message(options);
+    return Message({
+      type,
+      message: options
+    });
   };
 });