app-checkbox.vue 988 字节
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55
<template>
  <div class="checkbox">
    <checkbox v-model="CurrentVal" :disabled="disabled"></checkbox>
  </div>
</template>

<script lang="ts">
import { Vue, Component, Prop, Model, Emit } from "vue-property-decorator";
import { Subject } from "rxjs";
import { debounceTime, distinctUntilChanged } from "rxjs/operators";

@Component({})
export default class AppCheckbox extends Vue {
  /**
   * 传入值
   * @type {any}
   * @memberof checkbox
   */
  @Prop() public value?:any;

  /**
   * 是否禁用
   * @type {boolean}
   * @memberof checkbox
   */
  @Prop() public disabled?: boolean;


  /**
   * 当前值
   *
   * @memberof checkbox
   */
  get CurrentVal() {
      if(this.value == 0){
        return false;
      }else if(this.value ==1){
        return true;
      }
  }

  /**
   * 值变化
   *
   * @memberof checkbox
   */
  set CurrentVal(val: any) {
      this.$emit("change", val?1:0); 
  }
}
</script>

<style lang='less'>
@import "./app-checkbox.less";
</style>