Forráskód Böngészése

Checkbox: fix change event param

Leopoldthecoder 7 éve
szülő
commit
85a8ea0ade

+ 2 - 1
build/deploy-faas.sh

@@ -14,4 +14,5 @@ cp -rf ../../examples/element-ui/** $SUB_FOLDER/
 cd ../..
 
 # deploy domestic site
-faas deploy alpha
+faas deploy alpha
+rm -rf temp_web

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

@@ -165,9 +165,15 @@
         }
       },
       handleChange(ev) {
+        if (this.isLimitExceeded) return;
+        let value;
+        if (ev.target.checked) {
+          value = this.trueLabel === undefined ? true : this.trueLabel;
+        } else {
+          value = this.falseLabel === undefined ? false : this.falseLabel;
+        }
+        this.$emit('change', value, ev);
         this.$nextTick(() => {
-          if (this.isLimitExceeded) return;
-          this.$emit('change', this.model, ev);
           if (this._checkboxGroup) {
             this.dispatch('ElCheckboxGroup', 'change', [this._checkboxGroup.value]);
           }

+ 1 - 1
packages/checkbox/src/checkbox-group.vue

@@ -42,7 +42,7 @@
 </script>
 
 <template>
-  <div class="el-checkbox-group" role="group"  aria-label="checkbox-group">
+  <div class="el-checkbox-group" role="group" aria-label="checkbox-group">
     <slot></slot>
   </div>
 </template>

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

@@ -176,9 +176,15 @@
         }
       },
       handleChange(ev) {
+        if (this.isLimitExceeded) return;
+        let value;
+        if (ev.target.checked) {
+          value = this.trueLabel === undefined ? true : this.trueLabel;
+        } else {
+          value = this.falseLabel === undefined ? false : this.falseLabel;
+        }
+        this.$emit('change', value, ev);
         this.$nextTick(() => {
-          if (this.isLimitExceeded) return;
-          this.$emit('change', this.model, ev);
           if (this.isGroup) {
             this.dispatch('ElCheckboxGroup', 'change', [this._checkboxGroup.value]);
           }