Browse Source

Button: inherit disabled from wrapping Form (#10275)

杨奕 7 years ago
parent
commit
3934e8f3ba
1 changed files with 8 additions and 2 deletions
  1. 8 2
      packages/button/src/button.vue

+ 8 - 2
packages/button/src/button.vue

@@ -2,14 +2,14 @@
   <button
     class="el-button"
     @click="handleClick"
-    :disabled="disabled || loading"
+    :disabled="buttonDisabled || loading"
     :autofocus="autofocus"
     :type="nativeType"
     :class="[
       type ? 'el-button--' + type : '',
       buttonSize ? 'el-button--' + buttonSize : '',
       {
-        'is-disabled': disabled,
+        'is-disabled': buttonDisabled,
         'is-loading': loading,
         'is-plain': plain,
         'is-round': round
@@ -26,6 +26,9 @@
     name: 'ElButton',
 
     inject: {
+      elForm: {
+        default: ''
+      },
       elFormItem: {
         default: ''
       }
@@ -58,6 +61,9 @@
       },
       buttonSize() {
         return this.size || this._elFormItemSize || (this.$ELEMENT || {}).size;
+      },
+      buttonDisabled() {
+        return this.disabled || (this.elForm || {}).disabled;
       }
     },